:root{--paper:#fff;--ink:#0f172a;--muted:#64748b;--line:#e2e8f0;--marker:#2563eb;--marker-deep:#1d4ed8;--marker-tint:#2563eb14;--good:#16a34a;--bad:#dc2626;--r-card:16px;--r-btn:999px;--ease:cubic-bezier(.32,.72,0,1);--lift-sm:0 1px 2px #0f172a0d, 0 6px 16px -10px #0f172a1a;--lift:0 2px 6px #0f172a0d, 0 26px 50px -26px #0f172a24;--lift-lg:0 3px 8px #0f172a0f, 0 50px 90px -42px #0f172a2e;--ring:0 0 0 2px var(--paper),0 0 0 4px var(--marker);--display:var(--font-inter,"Inter"),"SF Pro Display","Segoe UI",system-ui,sans-serif;--sans:var(--font-inter,"Inter"),"SF Pro Display","Segoe UI",system-ui,sans-serif;--mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;--maxw:1120px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.6}h1,h2,h3,h4{font-family:var(--display);letter-spacing:-.02em;text-wrap:balance;margin:0;font-weight:700;line-height:1.1}p{text-wrap:pretty;margin:0}a{color:inherit;text-decoration:none}img,svg{max-width:100%;display:block}ul,ol{margin:0;padding:0;list-style:none}button{font-family:inherit}:focus-visible{box-shadow:var(--ring);border-radius:8px;outline:none}.tnum{font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}.wrap{max-width:var(--maxw);z-index:1;margin:0 auto;padding:0 24px;position:relative}.section{padding:96px 0}.section.tint{background:var(--marker-tint)}.section-head{max-width:640px;margin:0 0 48px}.section-head.center{text-align:center;margin-left:auto;margin-right:auto}.section-head h2{font-size:36px;line-height:40px}.section-head .lead{color:var(--muted);margin-top:16px;font-size:18px;line-height:28px}.btn{font-family:var(--sans);border-radius:var(--r-btn);cursor:pointer;white-space:nowrap;height:44px;transition:transform .2s var(--ease),box-shadow .2s var(--ease),background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease);border:1.5px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:15px;font-weight:600;display:inline-flex}.btn svg{flex:none;width:18px;height:18px}.btn-lg{height:48px;padding:0 24px;font-size:16px}.btn-primary{background:var(--marker);color:#fff;box-shadow:var(--lift-sm)}.btn-primary:hover{background:var(--marker-deep);box-shadow:var(--lift);transform:translateY(-2px)}.btn-primary:active{transform:scale(.98)}.btn-ghost{background:var(--paper);color:var(--ink);border-color:var(--line)}.btn-ghost:hover{border-color:var(--ink);box-shadow:var(--lift-sm);transform:translateY(-2px)}.btn-ghost:active{transform:scale(.98)}.card{border:1px solid var(--line);border-radius:var(--r-card);background:var(--paper);transition:box-shadow .3s var(--ease),transform .3s var(--ease)}.card:hover{box-shadow:var(--lift);transform:translateY(-2px)}.stars-row{align-items:center;gap:2px;display:inline-flex}.stars-row svg{width:15px;height:15px}.stars-row .st{fill:var(--marker)}.rating-line{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:14px;display:flex}.rating-line b{color:var(--ink);font-weight:600}.rating-line a{color:var(--marker-deep);font-weight:600}.rating-line a:hover{text-decoration:underline}.home-hero{padding:56px 0 112px;position:relative;overflow:hidden}.hero-copy{z-index:1;text-align:center;position:relative}.home-hero h1{letter-spacing:-.03em;color:var(--ink);max-width:1010px;margin:0 auto;font-size:clamp(38px,4.4vw,61px);font-weight:700;line-height:1.06}.hl-marker{-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#2563eb29;border-radius:6px;padding:0 10px;display:inline-block;transform:rotate(-1deg)}.hl-marker-text{display:inline-block;transform:rotate(1deg)}.hero-lede{color:var(--muted);text-align:center;max-width:560px;margin:24px auto 0;font-size:18px;line-height:28px}.hero-cta{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:32px;display:flex}.hero-stage{z-index:1;max-width:1120px;margin:64px auto 0;position:relative}#features{background:#f8fafc}#features .section-head h2{color:var(--ink)}.tagline-section{padding:96px 0}#pricing{background:#f8fafc}.pricing-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:40px;display:flex}.toggle{background:var(--marker-tint);border:1px solid var(--line);border-radius:999px;padding:4px;display:inline-flex}.toggle button{font-family:var(--sans);color:var(--muted);cursor:pointer;height:36px;transition:all .2s var(--ease);background:0 0;border:none;border-radius:999px;align-items:center;gap:8px;padding:0 18px;font-size:14px;font-weight:600;display:flex}.toggle button.active{background:var(--marker);color:#fff;box-shadow:var(--lift-sm)}.toggle .save{letter-spacing:.03em;color:var(--marker-deep);background:var(--paper);border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:700}.plans{grid-template-columns:1fr 1.1fr 1fr;align-items:stretch;gap:18px;display:grid}.plan{border:1px solid var(--line);border-radius:var(--r-card);background:var(--paper);flex-direction:column;padding:32px;display:flex}.plan.pro{border:2px solid var(--marker);box-shadow:var(--lift-lg);position:relative}.plan.pro:before{content:"Most popular";letter-spacing:.05em;text-transform:uppercase;color:#fff;background:var(--marker);border-radius:999px;padding:3px 10px;font-size:10.5px;font-weight:700;position:absolute;top:-11px;left:32px}.plan h3{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:14px;font-weight:700}.price{align-items:baseline;gap:6px;margin:14px 0 4px;display:flex}.price .amt{font-family:var(--display);letter-spacing:-.03em;font-size:48px;font-weight:800}.price .per{color:var(--muted);font-size:15px}.plan-note{color:var(--muted);min-height:20px;font-size:13.5px}.plan .btn{width:100%;margin:22px 0 6px}.plan ul{border-top:1px solid var(--line);flex-direction:column;gap:12px;margin:18px 0 0;padding:18px 0 0;display:flex}.plan ul li{color:var(--ink);align-items:flex-start;gap:11px;font-size:14.5px;display:flex}.plan ul li svg{width:18px;height:18px;color:var(--marker);flex:none;margin-top:1px}.plan.free ul li svg,.plan.enter ul li svg{color:var(--muted)}.student{color:var(--muted);text-align:center;margin-top:22px;font-size:14px}.student a{color:var(--marker-deep);font-weight:600}.student a:hover{text-decoration:underline}.faq{max-width:760px}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{cursor:pointer;font-family:var(--display);letter-spacing:-.01em;transition:color .18s var(--ease);padding:20px 36px 20px 0;font-size:18px;font-weight:700;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:hover{color:var(--marker-deep)}.faq summary:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);width:9px;height:9px;transition:transform .25s var(--ease);position:absolute;top:25px;right:4px;transform:rotate(45deg)}.faq details[open] summary:after{border-color:var(--marker);transform:rotate(-135deg)}.faq .ans{color:var(--muted);max-width:70ch;padding:0 36px 22px 0;font-size:16px;line-height:24px}.final-cta{position:relative;overflow:hidden}.final-card{z-index:1;border:1px solid var(--line);background:var(--paper);text-align:center;box-shadow:var(--lift);border-radius:24px;padding:64px 40px;position:relative}.final-card h2{letter-spacing:-.02em;font-size:36px}.final-card p{max-width:48ch;color:var(--muted);margin:18px auto 0;font-size:18px}.final-card .hero-cta{justify-content:center;margin-top:32px}.final-card .rating-line{justify-content:center;margin-top:20px}.footer{border-top:1px solid var(--line);margin-top:96px;padding:56px 0 40px}.footer-inner{flex-wrap:wrap;justify-content:space-between;gap:32px;display:flex}.footer-brand{font-family:var(--display);letter-spacing:-.02em;align-items:center;gap:9px;margin-bottom:14px;font-size:19px;font-weight:800;display:flex}.footer-brand .mark{flex:none;width:auto;height:24px}.footer .tag{color:var(--muted);max-width:32ch;font-size:14px}.footer nav{flex-wrap:wrap;gap:48px;display:flex}.footer nav h4{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 14px;font-size:11px;font-weight:700}.footer nav a{color:var(--ink);opacity:.8;transition:opacity .16s var(--ease),color .16s var(--ease);margin-bottom:9px;font-size:14.5px;display:block}.footer nav a:hover{opacity:1;color:var(--marker-deep)}.footer-base{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:44px;padding-top:22px;font-size:13px;display:flex}#try-it,#features,#pricing{scroll-margin-top:88px}[data-reveal]{opacity:0;filter:blur(6px);transition:opacity .8s var(--ease),transform .8s var(--ease),filter .8s var(--ease);transform:translateY(16px)}[data-reveal].in{opacity:1;filter:blur();transform:none}.home-hero [data-reveal]{animation:hero-reveal .8s var(--ease) both}@keyframes hero-reveal{0%{opacity:0;filter:blur(6px);transform:translateY(16px)}to{opacity:1;filter:blur();transform:none}}.stagger>*{transition-delay:calc(var(--i,0)*70ms)}@media (min-width:961px){.plan.pro{transform:scale(1.02)}}@media (max-width:960px){.plans{grid-template-columns:1fr}.footer-inner{flex-direction:column}}@media (max-width:640px){.section,.tagline-section{padding:64px 0}.home-hero{padding:40px 0 64px}.section-head h2{font-size:30px;line-height:36px}.final-card{padding:48px 24px}.final-card h2{font-size:30px}.footer nav{gap:32px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}[data-reveal]{opacity:1;filter:none;transform:none;animation:none!important}}
@keyframes ck-panel-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.tagline-text{max-width:880px;font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:36px;font-weight:700;line-height:40px}@media (min-width:760px){.tagline-text{font-size:48px;line-height:1.1}}.tagline-word{color:var(--ink);opacity:.3;transition:opacity .6s var(--ease)}.tagline-word.is-lit{opacity:1}.hero-waves{z-index:0;pointer-events:none;-webkit-mask-composite:source-in;height:min(860px,80%);position:absolute;top:0;left:0;right:0;-webkit-mask-image:radial-gradient(420px at 50% 30%,#00000073,#000 75%),linear-gradient(#000 78%,#0000);mask-image:radial-gradient(420px at 50% 30%,#00000073,#000 75%),linear-gradient(#000 78%,#0000);-webkit-mask-composite:source-in;mask-composite:intersect}.hero-waves svg{width:100%;height:100%;display:block;position:absolute;inset:0}.hero-waves-field{opacity:.999}.hero-waves-strand{opacity:1}@media (prefers-reduced-motion:no-preference){.hero-waves-strand{opacity:0;animation:hero-waves-strand-in .9s var(--ease) forwards}}@keyframes hero-waves-strand-in{to{opacity:1}}.hero-waves-pulse{opacity:0}@media (prefers-reduced-motion:no-preference){.hero-waves-pulse{opacity:1}.hero-waves-band{animation:linear infinite hero-waves-band-run}}@keyframes hero-waves-band-run{0%{transform:translate(0)}to{transform:translate(1800px)}}.hero-waves-band{transform-box:view-box}.hero-waves.is-scrolling .hero-waves-band,.hero-waves.is-offscreen .hero-waves-band{animation-play-state:paused}.bento-grid{grid-template-columns:repeat(6,1fr);gap:16px;display:grid}.bento-tile{border:1px solid var(--line);background:var(--paper);border-radius:16px;flex-direction:column;grid-column:span 2;padding:28px;display:flex;position:relative}.bento-tile--a{grid-column:span 4;min-height:300px}.bento-tile--g,.bento-tile--f{grid-column:span 3}.bento-tile h3{font-size:18px;font-weight:700;line-height:1.3}.bento-desc{color:var(--muted);margin-top:6px;font-size:14px;line-height:20px}.bento-link{z-index:1;color:var(--ck-primary,#2563eb);margin-top:8px;font-size:14px;font-weight:600;line-height:20px;text-decoration:none;display:inline-block;position:relative}.bento-link:hover{text-decoration:underline}.bento-visual{border-radius:10px;flex-grow:1;margin-top:16px;position:relative;overflow:hidden}.bento-visual *{max-width:100%}.bento-iconbtn{border:1px solid var(--line);background:var(--paper);width:36px;height:36px;color:var(--ink);cursor:pointer;transition:background .18s var(--ease),color .18s var(--ease),transform .18s var(--ease);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.bento-iconbtn svg{width:16px;height:16px}.bento-iconbtn:hover{background:var(--marker);color:#fff;transform:translateY(-1px)}.bento-iconbtn:focus-visible{box-shadow:var(--ring);outline:none}.bento-expand{position:absolute;bottom:20px;right:20px}dialog.bento-dialog{border:1px solid var(--line);background:var(--paper);width:min(880px,100vw - 48px);max-height:calc(100vh - 64px);color:var(--ink);box-shadow:var(--lift-lg);border-radius:20px;margin:auto;padding:48px;overflow-y:auto}dialog.bento-dialog::backdrop{opacity:0;transition:opacity .4s var(--ease);background:#0f172a66}dialog.bento-dialog[open]::backdrop{opacity:1}@starting-style{dialog.bento-dialog[open]::backdrop{opacity:0}}dialog.bento-dialog{opacity:0;transition:opacity .4s var(--ease),transform .4s var(--ease),overlay .4s var(--ease) allow-discrete,display .4s var(--ease) allow-discrete;transform:scale(.96)translateY(12px)}dialog.bento-dialog[open]{opacity:1;transform:none}@starting-style{dialog.bento-dialog[open]{opacity:0;transform:scale(.96)translateY(12px)}}@media (max-width:640px){dialog.bento-dialog{padding:32px}}.hero-demo-btn{cursor:pointer;font-family:var(--sans);color:var(--muted);transition:color .2s var(--ease);background:0 0;border:0;align-items:center;gap:6px;margin:14px auto 0;padding:0;font-size:14px;font-weight:500;display:flex}.hero-demo-btn svg{flex:none;width:13px;height:13px}.hero-demo-btn:hover{color:var(--ink);text-decoration:underline}dialog.demo-dialog{width:min(1040px,100vw - 48px);box-shadow:var(--lift-lg);background:#000;border:none;border-radius:16px;margin:auto;padding:0;overflow:visible}dialog.demo-dialog::backdrop{opacity:0;transition:opacity .3s var(--ease);background:#0f172a9e}dialog.demo-dialog[open]::backdrop{opacity:1}@starting-style{dialog.demo-dialog[open]::backdrop{opacity:0}}dialog.demo-dialog{opacity:0;transition:opacity .3s var(--ease),transform .3s var(--ease),overlay .3s var(--ease) allow-discrete,display .3s var(--ease) allow-discrete;transform:scale(.97)}dialog.demo-dialog[open]{opacity:1;transform:none}@starting-style{dialog.demo-dialog[open]{opacity:0;transform:scale(.97)}}.demo-dialog-video{border-radius:16px;width:100%;height:auto;display:block}.demo-dialog-close{cursor:pointer;border:1px solid var(--line);background:var(--paper);width:36px;height:36px;color:var(--ink);box-shadow:var(--lift-sm);border-radius:999px;place-items:center;display:grid;position:absolute;top:-14px;right:-14px}.demo-dialog-close svg{width:17px;height:17px}.demo-dialog-close:hover{border-color:var(--ink)}@media (max-width:640px){.demo-dialog-close{top:-12px;right:0}}.bento-dialog-close{z-index:2;position:absolute;top:20px;right:20px}.sheet-head{grid-template-columns:1.4fr 1fr;gap:40px;padding-right:44px;display:grid}.sheet-head-left h2{font-size:28px;font-weight:700;line-height:1.2}.sheet-head-left .sheet-lead{color:var(--muted);margin-top:14px;font-size:17px;line-height:27px}.sheet-cta{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.sheet-checklist{flex-direction:column;gap:14px;margin:2px 0 0;padding:0;list-style:none;display:flex}.sheet-checklist li{color:var(--ink);align-items:flex-start;gap:10px;font-size:15px;line-height:22px;display:flex}.sheet-check{background:var(--good);color:#fff;border-radius:999px;flex:none;justify-content:center;align-items:center;width:18px;height:18px;margin-top:2px;display:inline-flex}.sheet-check svg{width:11px;height:11px}.sheet-demo{background:#f8fafc;border-radius:16px;flex-direction:column;justify-content:center;min-height:280px;margin-top:32px;padding:32px;display:flex}.sheet-body{margin-top:32px}.sheet-body p{color:var(--ink);opacity:.9;margin-top:12px;font-size:16px;line-height:26px}.sheet-body p:first-of-type{margin-top:0}.sheet-facts{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:24px;margin-top:32px;padding-top:24px;display:grid}.sheet-fact-label{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600;display:block}.sheet-fact-value{color:var(--ink);margin-top:6px;font-size:15px;display:block}@media (max-width:760px){.sheet-head,.sheet-facts{grid-template-columns:1fr}}.demo-btn{border:1px solid var(--line);background:var(--paper);height:36px;color:var(--ink);cursor:pointer;transition:background .18s var(--ease),color .18s var(--ease),border-color .18s var(--ease);border-radius:999px;justify-content:center;align-items:center;padding:0 18px;font-size:13.5px;font-weight:600;display:inline-flex}.demo-btn:hover{border-color:var(--marker);color:var(--marker-deep)}.demo-btn:focus-visible{box-shadow:var(--ring);outline:none}.demo-caption{font-family:var(--mono);color:var(--muted);font-size:11px}@keyframes demo-annot-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.bento-chart{width:100%;position:relative}.bento-chart-render{width:100%;height:100%}.bento-chart-render svg{width:100%;height:100%;display:block}.bento-chart-skel{background:linear-gradient(90deg,var(--paper) 0%,#eef2f7 50%,var(--paper) 100%);background-size:200% 100%;border-radius:8px;animation:1.4s ease-in-out infinite bento-chart-shimmer;position:absolute;inset:0}@keyframes bento-chart-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.bento-visual-a{flex-direction:column;justify-content:center;align-items:center;gap:12px;height:100%;min-height:220px;padding:12px;display:flex}.bento-a-bar{border:1px solid var(--line);background:var(--paper);box-shadow:var(--lift-sm);border-radius:999px;gap:6px;padding:6px 10px;display:flex}.bento-a-dot{background:var(--line);border-radius:999px;width:6px;height:6px}.bento-a-slide{aspect-ratio:16/10;border:1px solid var(--line);background:var(--paper);border-radius:8px;flex-direction:column;gap:10px;width:100%;max-width:320px;padding:14px;display:flex}.bento-a-slide-bar{background:var(--line);border-radius:999px;width:55%;height:6px}.bento-a-slide-chart{flex:1}@media (prefers-reduced-motion:no-preference){.bento-a-bar{animation:4s ease-in-out infinite bento-float}}@keyframes bento-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.demo-a{flex-direction:column;align-items:center;gap:20px;display:flex}.demo-a-toolbar{border:1px solid var(--line);background:var(--paper);box-shadow:var(--lift-sm);opacity:1;transition:opacity .3s var(--ease);border-radius:999px;gap:6px;padding:6px 10px;display:flex}.demo-a-toolbar span{background:var(--line);border-radius:999px;width:6px;height:6px}.demo-a.is-applied .demo-a-toolbar{opacity:0}.demo-a-slide{aspect-ratio:16/10;border:1px solid var(--line);background:var(--paper);width:100%;max-width:400px;box-shadow:var(--lift-sm);border-radius:10px;flex-direction:column;gap:12px;padding:20px;display:flex;position:relative}.demo-a-slide-title{background:var(--line);border-radius:999px;width:45%;height:8px}.demo-a-chart{min-height:190px;position:relative}.demo-a-selection{pointer-events:none;transition:border-color .3s var(--ease);border:1.5px solid #0000;border-radius:4px;position:absolute;inset:0}.demo-a:not(.is-applied) .demo-a-selection{border-color:var(--marker)}.demo-a-handle{border:1.5px solid var(--marker);opacity:1;width:8px;height:8px;transition:opacity .3s var(--ease);background:#fff;border-radius:2px;position:absolute}.demo-a.is-applied .demo-a-handle{opacity:0}.demo-a-handle-tl{top:-5px;left:-5px}.demo-a-handle-tr{top:-5px;right:-5px}.demo-a-handle-bl{bottom:-5px;left:-5px}.demo-a-handle-br{bottom:-5px;right:-5px}.demo-a-toast{white-space:nowrap;background:var(--ink);color:#fff;animation:demo-toast-rise .35s var(--ease) both;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}@keyframes demo-toast-rise{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.demo-a.is-applied .demo-a-apply{background:var(--marker);color:#fff;border-color:var(--marker)}.bento-visual-b{flex-direction:column;justify-content:center;height:100%;min-height:190px;padding:12px;display:flex}.demo-b{flex-direction:column;gap:20px;height:100%;display:flex}.demo-b-chips{flex-wrap:wrap;gap:8px;display:flex}.demo-chip{border:1px solid var(--line);color:var(--ink);background:var(--paper);cursor:pointer;transition:background .18s var(--ease),color .18s var(--ease),border-color .18s var(--ease);border-radius:999px;padding:7px 14px;font-size:12.5px;font-weight:600}.demo-chip:hover{border-color:var(--marker)}.demo-chip.is-active{background:var(--marker);color:#fff;border-color:var(--marker)}.demo-chip:focus-visible{box-shadow:var(--ring);outline:none}.bento-visual-c{flex-direction:column;justify-content:center;gap:12px;height:100%;min-height:140px;padding:8px 4px;display:flex}.bento-c-keys{justify-content:center;gap:8px;display:flex}.bento-c-key{border:1px solid var(--line);background:var(--paper);width:28px;height:28px;font-family:var(--mono);color:var(--muted);transition:transform .18s var(--ease),background .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease);border-radius:7px;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.bento-c-key.is-active{background:var(--marker-tint);border-color:var(--marker);color:var(--marker-deep);transform:translateY(1px)}.demo-c{flex-direction:column;gap:16px;display:flex}.demo-c-keys{gap:10px;display:flex}.demo-keycap{border:1px solid var(--line);background:var(--paper);width:34px;height:34px;font-family:var(--mono);color:var(--ink);cursor:pointer;transition:transform .12s var(--ease),background .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease);border-radius:8px;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:inline-flex}.demo-keycap:hover{border-color:var(--marker)}.demo-keycap:focus-visible{box-shadow:var(--ring);outline:none}.demo-keycap.is-active{background:var(--marker-tint);border-color:var(--marker);color:var(--marker-deep);transform:translateY(1px)}.bento-visual-d{grid-template-columns:repeat(6,1fr);place-items:center;gap:14px 8px;height:100%;min-height:120px;padding:8px;display:grid}.bento-glyph{width:20px;height:20px;color:var(--muted)}.bento-glyph.is-marker{color:var(--marker)}.demo-d{flex-direction:column;gap:16px;display:flex}.demo-d-search-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.demo-d-search{border:1px solid var(--line);background:var(--paper);height:38px;font-family:var(--sans);color:var(--ink);border-radius:10px;flex:1;padding:0 14px;font-size:14px}.demo-d-search:focus{box-shadow:var(--ring);border-color:var(--marker);outline:none}.demo-d-grid{grid-template-columns:repeat(6,1fr);gap:12px;max-height:420px;padding-right:4px;display:grid;overflow-y:auto}.demo-d-cell{aspect-ratio:1;border:1px solid var(--line);background:var(--paper);border-radius:10px;justify-content:center;align-items:center;display:flex}.demo-d-cell .bento-glyph{width:18px;height:18px}.bento-visual-e{flex-direction:column;gap:8px;height:100%;min-height:140px;padding:4px;display:flex}.bento-e-formula{border:1px solid var(--line);background:var(--paper);font-family:var(--mono);color:var(--ink);border-radius:6px;padding:6px 10px;font-size:11px}.bento-e-grid{flex:1;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.bento-e-grid span{border:1px solid var(--line);background:var(--paper);border-radius:3px}.bento-e-grid span.is-active{border-color:var(--marker);background:var(--marker-tint)}.demo-e{flex-direction:column;gap:20px;display:flex}.demo-e-grid{flex-direction:column;gap:4px;display:flex}.demo-e-header,.demo-e-row{grid-template-columns:44px repeat(3,1fr);align-items:center;gap:4px;display:grid}.demo-e-header span{font-family:var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;text-align:center;font-size:10px}.demo-e-rowlabel{font-family:var(--mono);color:var(--muted);font-size:11px;font-weight:600}.demo-e-value{border:1px solid var(--line);background:var(--paper);font-family:var(--mono);color:var(--ink);text-align:center;border-radius:6px;padding:8px 6px;font-size:12px}.demo-e-cell{appearance:none;cursor:pointer;font:inherit;color:inherit;transition:background .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease),transform .12s var(--ease)}.demo-e-cell:hover{background:var(--marker);color:#fff;border-color:var(--marker)}.demo-e-cell:active{transform:scale(.96)}.demo-e-cell:focus-visible{box-shadow:var(--ring);outline:none}.demo-e-row.is-editable .demo-e-cell{border-color:var(--marker);background:var(--marker-tint);color:var(--marker-deep);font-weight:700}.bento-visual-g{justify-content:center;align-items:center;gap:20px;height:100%;min-height:140px;padding:8px;display:flex}.bento-g-table-mini{flex:none;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);gap:4px;width:72px;height:72px;display:grid}.bento-g-table-mini span{border:1px solid var(--line);background:var(--paper);border-radius:3px}.bento-g-chart-mini{flex:160px;max-width:200px}@media (prefers-reduced-motion:no-preference){.bento-g-table-mini span{animation:bento-g-cell 3.6s var(--ease) infinite}}.bento-g-table-mini span:nth-child(-n+3){animation-delay:0s}.bento-g-table-mini span:nth-child(n+4):nth-child(-n+6){animation-delay:.2s}.bento-g-table-mini span:nth-child(n+7){animation-delay:.4s}@keyframes bento-g-cell{0%,10%{background:var(--paper);border-color:var(--line)}20%,70%{background:var(--marker-tint);border-color:var(--marker)}85%,to{background:var(--paper);border-color:var(--line)}}.demo-g{flex-direction:column;align-items:flex-start;gap:20px;width:100%;display:flex}.demo-g-table{flex-direction:column;gap:4px;width:100%;max-width:360px;display:flex}.demo-g-row{grid-template-columns:56px repeat(3,1fr);align-items:center;gap:4px;display:grid}.demo-g-rowlabel{font-family:var(--mono);color:var(--muted);opacity:0;transition:opacity .2s var(--ease);font-size:11px;font-weight:600}.demo-g-table.is-filled .demo-g-rowlabel{opacity:1}.demo-g-cell{border:1px solid var(--line);background:var(--paper);font-family:var(--mono);color:var(--ink);text-align:center;opacity:0;transition:opacity .3s var(--ease);border-radius:6px;padding:8px 6px;font-size:12px}.demo-g-table.is-filled .demo-g-cell{opacity:1}.bento-visual-f{flex-wrap:wrap;align-items:center;gap:10px 16px;min-height:100%;display:flex}.bento-f-input{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;align-items:center;gap:8px;max-width:100%;padding:10px 14px;font-size:13.5px;display:flex}.bento-f-input svg{width:14px;height:14px;color:var(--marker);flex:none}.bento-f-input span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bento-f-result{color:var(--muted);font-size:13px}.demo-f{flex-direction:column;gap:24px;display:flex}.demo-f-chat{flex-direction:column;gap:12px;display:flex}.demo-f-bubble{border-radius:14px;align-self:flex-start;align-items:center;gap:8px;max-width:100%;padding:10px 14px;font-size:13.5px;line-height:1.4;display:inline-flex}.demo-f-bubble-user{background:var(--paper);border:1px solid var(--line);color:var(--ink)}.demo-f-bubble-user svg{width:14px;height:14px;color:var(--marker);flex:none}.demo-f-typing{white-space:nowrap;width:0;font-family:var(--mono);animation:1.6s steps(37,end) forwards demo-f-type;display:inline-block;overflow:hidden}@keyframes demo-f-type{to{width:37ch}}.demo-f-bubble-reply{background:var(--marker-tint);color:var(--marker-deep);font-family:var(--mono);opacity:0;animation:demo-annot-in .4s var(--ease) forwards;font-size:12.5px;animation-delay:1.9s}.demo-f-chart{animation:demo-annot-in .4s var(--ease) both}@media (max-width:960px){.bento-grid{grid-template-columns:repeat(2,1fr)}.bento-tile{grid-column:span 1}}@media (max-width:640px){.bento-grid{grid-template-columns:1fr}.bento-tile{grid-column:span 1}}.reviews-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:270px;gap:16px;display:grid}.review-card{border:1px solid var(--line);background:var(--paper);transition-delay:calc(var(--i,0)*70ms);border-radius:16px;flex-direction:column;grid-column:span 1;gap:12px;padding:22px;display:flex;overflow:hidden}.review-card--big{grid-column:span 2}.review-card--accent{justify-content:center}.review-card .stars-row svg{width:15px;height:15px}.review-card blockquote{color:var(--ink);margin:0;font-size:15.5px;line-height:1.5}.review-card--accent blockquote{font-size:22px;font-weight:700}.review-card figcaption{flex-direction:column;gap:2px;margin-top:auto;display:flex}.review-name{color:var(--ink);font-size:14px;font-weight:600}.review-meta{font-family:var(--mono);color:var(--muted);font-size:11px}.reviews-footer{text-align:center;margin-top:32px}.reviews-footer p{color:var(--muted);margin:0 0 6px;font-size:15px}.reviews-footer a{color:var(--marker-deep);font-size:15px;font-weight:600;display:inline-flex}.reviews-footer a:hover{text-decoration:underline}@media (max-width:1100px){.reviews-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:auto}.review-card{min-height:200px}}@media (max-width:640px){.reviews-grid{grid-template-columns:1fr}.review-card,.review-card--big{grid-column:span 1;min-height:0}}@media (prefers-reduced-motion:reduce){.tagline-word{opacity:1!important;clip-path:none!important;transition:none!important;animation:none!important;transform:none!important}.bento-a-bar,.bento-g-table-mini span,.bento-chart-skel,.hero-waves-drift-a,.hero-waves-drift-b,.hero-waves-band{animation:none!important}dialog.bento-dialog,dialog.bento-dialog::backdrop{transition:none!important}.demo-a-toolbar,.demo-a-handle,.demo-a-toast,.demo-a-selection{transition:none!important;animation:none!important}.bento-c-key,.demo-g-cell,.demo-g-rowlabel{transition:none!important}.demo-f-typing{width:37ch!important;animation:none!important}.demo-f-bubble-reply,.demo-f-chart{opacity:1!important;animation:none!important}}
