@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";
@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-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-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius-sm:.25rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;-webkit-text-decoration:inherit;-webkit-text-decoration: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:where(:not(iframe)){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{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.inline{display:inline}.grow{flex-grow:1}.rounded-full{border-radius:3.40282e38px}.rounded-xl{border-radius:var(--radius-xl)}.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)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.\[a\:bvias\]{a:bvias}.\[a\:d\]{a:d}.\[a\:dians\]{a:dians}.\[a\:kjupar\]{a:kjupar}.\[a\:pazati\]{a:pazati}.\[a\:rkitekt\]{a:rkitekt}.\[aba\:J\]{aba:J}.\[ala\:rm\]{ala:rm}.\[alsi\:v\]{alsi:v}.\[alzi\:z\]{alzi:z}.\[apl\:d\]{apl:d}.\[apri\:Jiert\]{apri:Jiert}.\[atribju\:t\]{atribju:t}.\[ba\:tam\]{ba:tam}.\[bala\:lad3\]{bala:lad3}.\[bi\:st\]{bi:st}.\[bi\:t\]{bi:t}.\[bil\:n\]{bil:n}.\[bo\:a\]{bo:a}.\[brli\:t\]{brli:t}.\[d\:ksIdson\]{d:ksIdson}.\[di\:tekt\]{di:tekt}.\[dlpa\:rt\]{dlpa:rt}.\[dra\:p\]{dra:p}.\[drkri\:s\]{drkri:s}.\[dsi\:n\]{dsi:n}.\[du\:ti\]{du:ti}.\[eksikju\:t\]{eksikju:t}.\[etitu\:a\]{etitu:a}.\[f\:ld\]{f:ld}.\[f\:mell\]{f:mell}.\[fa\:loo\]{fa:loo}.\[fi\:lp\]{fi:lp}.\[fri\:kwont\]{fri:kwont}.\[ha\:rdjip\]{ha:rdjip}.\[ha\:rt\]{ha:rt}.\[hi\:l\]{hi:l}.\[hju\:d3\]{hju:d3}.\[hkskju\:s\]{hkskju:s}.\[i\:kwal\]{i:kwal}.\[i\:t\]{i:t}.\[i\:v\]{i:v}.\[ju\:nian\]{ju:nian}.\[ju\:talaız\]{ju:talaız}.\[ju\:z\]{ju:z}.\[juni\:k\]{juni:k}.\[k\:jos\]{k:jos}.\[ka\:lani\]{ka:lani}.\[ka\:madi\]{ka:madi}.\[ka\:man\]{ka:man}.\[ka\:mpaltjm\]{ka:mpaltjm}.\[ka\:mpitant\]{ka:mpitant}.\[ka\:mplimant\]{ka:mplimant}.\[ka\:mprihend\]{ka:mprihend}.\[ka\:nfidons\]{ka:nfidons}.\[ka\:nsept\]{ka:nsept}.\[ka\:ntinant\]{ka:ntinant}.\[ka\:ntreekt\]{ka:ntreekt}.\[ketago\:ri\]{ketago:ri}.\[ki\:n\]{ki:n}.\[kjoria\:sati\]{kjoria:sati}.\[komju\:nkert\]{komju:nkert}.\[konlvi\:niont\]{konlvi:niont}.\[kova\:parelt\]{kova:parelt}.\[kru\:al\]{kru:al}.\[ks\:ronsi\]{ks:ronsi}.\[kspo\:rt\]{kspo:rt}.\[kstri\:m\]{kstri:m}.\[li\:g\]{li:g}.\[lu\:s\]{lu:s}.\[ma\:dist\]{ma:dist}.\[ma\:dntar\]{ma:dntar}.\[ma\:rdar\]{ma:rdar}.\[mfju\:z\]{mfju:z}.\[mi\:diom\]{mi:diom}.\[mi\:n\]{mi:n}.\[mi\:nz\]{mi:nz}.\[mku\:a\]{mku:a}.\[mnkri\:s\]{mnkri:s}.\[mnto\:rs\]{mnto:rs}.\[mu\:v\]{mu:v}.\[na\:d\]{na:d}.\[nju\:milielt\]{nju:milielt}.\[no\:rml\]{no:rml}.\[nu\:trol\]{nu:trol}.\[o\:rdneri\]{o:rdneri}.\[o\:rgonalz\]{o:rgonalz}.\[oh\:rd\]{oh:rd}.\[okju\:mjalelt\]{okju:mjalelt}.\[okju\:z\]{okju:z}.\[olka\:mphj\]{olka:mphj}.\[opa\:adsaiz\]{opa:adsaiz}.\[opru\:v\]{opru:v}.\[ow\:rd\]{ow:rd}.\[p\:kward\]{p:kward}.\[pa\:lasi\]{pa:lasi}.\[pa\:latiks\]{pa:latiks}.\[pa\:rj\]{pa:rj}.\[pa\:rltsupelt\]{pa:rltsupelt}.\[pa\:rt\]{pa:rt}.\[pa\:sabl\]{pa:sabl}.\[pa\:varti\]{pa:varti}.\[pa\:zativ\]{pa:zativ}.\[parf\:rm\]{parf:rm}.\[po\:z\]{po:z}.\[pra\:blom\]{pra:blom}.\[pra\:gras\]{pra:gras}.\[prizu\:m\]{prizu:m}.\[produ\:s\]{produ:s}.\[prouti\:n\]{prouti:n}.\[pru\:v\]{pru:v}.\[qu\:z\]{qu:z}.\[ri\:olam\]{ri:olam}.\[ri\:zn\]{ri:zn}.\[ridu\:s\]{ridu:s}.\[rife\:r\]{rife:r}.\[rifo\:rm\]{rifo:rm}.\[riko\:1\]{riko:1}.\[rili\:s\]{rili:s}.\[rimu\:v\]{rimu:v}.\[risi\:V\]{risi:V}.\[rispa\:nd\]{rispa:nd}.\[rispa\:nsabll\]{rispa:nsabll}.\[ru\:a\]{ru:a}.\[ru\:l\]{ru:l}.\[ru\:mor\]{ru:mor}.\[ru\:t\]{ru:t}.\[sa\:Ind\]{sa:Ind}.\[sa\:lVI\]{sa:lVI}.\[sa\:lam\]{sa:lam}.\[sanka\:ad3i\]{sanka:ad3i}.\[sapo\:rt\]{sapo:rt}.\[si\:k\]{si:k}.\[si\:n\]{si:n}.\[skri\:m\]{skri:m}.\[skwi\:z\]{skwi:z}.\[soksi\:d\]{soksi:d}.\[sta\:p\]{sta:p}.\[sta\:rt\]{sta:rt}.\[sto\:ri\]{sto:ri}.\[stra\:D\]{stra:D}.\[stri\:m\]{stri:m}.\[swa\:l00\]{swa:l00}.\[t\:k\]{t:k}.\[ta\:rgit\]{ta:rgit}.\[terato\:ri\]{terato:ri}.\[tfa\:rd3\]{tfa:rd3}.\[ti\:t\]{ti:t}.\[to\:rm\]{to:rm}.\[tri\:t\]{tri:t}.\[umpo\:rt\]{umpo:rt}.\[vi\:okl\]{vi:okl}.\[wu\:nd\]{wu:nd}}:root{--color-primary:#6366f1;--color-primary-hover:#4f46e5;--color-secondary:#20970b;--color-neutral:#9c9c9c;--color-background:#fafafa;--color-bg:var(--color-background);--color-surface:#fff;--color-text-primary:#0a0a0a;--color-text-secondary:#6b6b6b;--color-border:#e8e8ec;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-primary-focus:#6366f11f;--color-primary-ring:#6366f133;--color-primary-muted:#6366f15c;--color-primary-subtle:#6366f10d;--color-primary-on:var(--color-surface);--color-neutral-subtle:#0000000f;--color-primary-on-subtle:#ffffff40;--color-warning-subtle:#f59e0b0a;--color-warning-active-subtle:#f59e0b1a;--color-primary-info-border:#6366f12e;--color-warning-active:#d97706;--color-primary-glow:#6366f159;--color-surface-glass:#ffffffeb;--color-shadow:#0000000f;--space-1:4px;--space-quarter:1px;--space-half:2px;--space-3-quarter:3px;--space-1-5:6px;--space-2-5:10px;--space-3-5:14px;--space-tab-y:9px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--radius-pill:9999px;--font-display:"General Sans", "DM Sans", Arial, sans-serif;--font-body:"DM Sans", "General Sans", Arial, sans-serif;--font-mono:"JetBrains Mono", "SFMono-Regular", Consolas, monospace;--font-size-micro:10px;--font-size-overline:11px;--font-size-caption:12px;--font-size-body-small:13px;--font-size-input:14px;--font-size-body:15px;--font-size-subhead:16px;--font-size-expression:17px;--font-size-card-title:18px;--font-size-detail:20px;--line-height-caption:1.4;--line-height-card:1.35;--tracking-label:.06em;--tracking-card-title:-.03em;--tracking-detail-heading:-.035em;--tracking-expression:-.02em;--control-height-md:46px;--control-icon-inset:14px;--control-padding-x:16px;--control-padding-leading:42px;--focus-ring-width:3px;--line-height-ui:1;--size-favorite-card:32px;--icon-size-sm:14px;--icon-size-md:20px;--icon-size-card:16px;--text-underline-offset:3px;--shadow-card-rest:0 1px 3px #00000005;--shadow-card-hover:0 4px 16px var(--color-shadow);--shadow-card-open:0 8px 24px var(--color-shadow);--shadow-example-hover:0 2px 8px var(--color-shadow);--shadow-primary-hover:0 2px 8px var(--color-primary-glow);--duration-fast:.15s;--example-number-width:18px}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--color-background);color:var(--color-text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--color-primary-ring);outline-offset:2px}.app-layout{min-height:100vh;padding-bottom:calc(68px + env(safe-area-inset-bottom,0px));flex-direction:column;display:flex}.page-container{width:min(100% - 32px,1200px);margin-inline:auto}.site-header{z-index:40;border-bottom:1px solid var(--color-border);background:var(--color-surface-glass);-webkit-backdrop-filter:blur(12px);height:56px;position:sticky;top:0}.site-header-inner{justify-content:space-between;align-items:center;height:100%;display:flex}.brand{align-items:center;gap:var(--space-2);font-family:var(--font-display);letter-spacing:-.03em;font-size:16px;font-weight:700;display:inline-flex}.brand-logo{border-radius:7px;flex-shrink:0;width:26px;height:26px;box-shadow:0 2px 6px #6366f140}.site-nav{align-items:center;gap:var(--space-6);color:var(--color-text-secondary);font-size:13px;font-weight:500;display:flex}.site-nav a{padding:var(--space-2) 0;transition:color .2s}.site-nav a:hover{color:var(--color-primary-hover)}.bottom-nav{z-index:50;background:var(--color-surface-glass);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--color-border);padding-bottom:env(safe-area-inset-bottom,0px);position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 10px #00000008}.bottom-nav-inner{grid-template-columns:repeat(4,1fr);max-width:480px;height:58px;margin:0 auto;display:grid}.bottom-nav-item{color:var(--color-text-secondary);-webkit-tap-highlight-color:transparent;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:500;text-decoration:none;transition:color .18s;display:flex}.bottom-nav-item.is-active{color:var(--color-primary);font-weight:700}.bottom-nav-icon{width:22px;height:22px;transition:transform .18s}.bottom-nav-item.is-active .bottom-nav-icon{transform:scale(1.1)}.bottom-nav-icon-wrap{justify-content:center;align-items:center;display:flex;position:relative}.bottom-nav-badge{border-radius:var(--radius-pill);background:var(--color-primary);color:#fff;min-width:16px;height:16px;font-family:var(--font-mono);text-align:center;padding:0 4px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:-4px;right:-10px}.landing-page{padding-bottom:var(--space-12)}.landing-hero{padding-top:var(--space-10);padding-bottom:var(--space-12);text-align:center;flex-direction:column;align-items:center;display:flex}.landing-hero-badge{align-items:center;gap:var(--space-2);border:1px solid var(--color-primary-ring);border-radius:var(--radius-pill);color:var(--color-primary);margin-bottom:var(--space-4);background:#6366f114;padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.badge-icon{width:14px;height:14px}.landing-title{margin:0 0 var(--space-4);font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(28px,6vw,44px);font-weight:700;line-height:1.2}.landing-title strong{color:var(--color-primary)}.landing-description{max-width:520px;margin:0 0 var(--space-6);color:var(--color-text-secondary);word-break:keep-all;font-size:15px;line-height:1.55}.landing-cta-group{gap:var(--space-3);flex-wrap:wrap;justify-content:center;width:100%;max-width:400px;display:flex}.button-lg{border-radius:var(--radius-lg);justify-content:center;align-items:center;gap:var(--space-2);flex:1;min-width:160px;min-height:48px;padding:12px 22px;font-size:15px;font-weight:600;display:inline-flex}.button-primary{border:1px solid var(--color-primary);background:var(--color-primary);color:var(--color-surface);transition:background-color .2s,box-shadow .2s,transform .2s}.button-primary:hover{background:var(--color-primary-hover);box-shadow:0 4px 14px var(--color-primary-glow);transform:translateY(-1px)}.button-secondary{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-primary);transition:all .2s}.button-secondary:hover{border-color:var(--color-neutral);background:#f4f4f5;transform:translateY(-1px)}.button-outline{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary);border-radius:var(--radius-lg);justify-content:center;align-items:center;padding:12px 18px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.button-outline:hover{border-color:var(--color-primary);background:#6366f10a}.button-block{width:100%}.button-arrow{width:16px;height:16px}.button-star{width:16px;height:16px;color:var(--color-warning)}.landing-steps-section{padding-top:var(--space-8);padding-bottom:var(--space-12)}.section-heading-centered{text-align:center;margin-bottom:var(--space-6)}.section-heading-centered h2{font-family:var(--font-display);letter-spacing:-.035em;margin:0;font-size:clamp(22px,4vw,28px);font-weight:700}.landing-modules-section{padding-top:var(--space-4);padding-bottom:var(--space-8)}.landing-modules-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.landing-module-card{align-items:flex-start;gap:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-2xl,20px);padding:var(--space-6);background:var(--color-surface);color:inherit;text-decoration:none;transition:all .2s;display:flex}.landing-module-card:hover{border-color:var(--color-primary-muted);box-shadow:0 6px 20px var(--color-shadow);transform:translateY(-2px)}.module-card-icon{border-radius:var(--radius-xl);background:#6366f114;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:24px;display:grid}.module-card-body{flex-direction:column;flex-grow:1;min-width:0;display:flex}.module-card-top{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.module-badge{font-family:var(--font-mono);color:var(--color-primary);border-radius:var(--radius-pill);background:#6366f11a;padding:2px 8px;font-size:11px;font-weight:700}.module-card-body h3{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-text-primary);margin:0;font-size:18px;font-weight:700}.module-card-body p{margin:0 0 var(--space-4);color:var(--color-text-secondary);word-break:keep-all;font-size:13px;line-height:1.5}.module-card-footer{color:var(--color-primary);align-items:center;gap:4px;margin-top:auto;font-size:13px;font-weight:600;display:flex}.card-arrow{width:16px;height:16px;transition:transform .18s}.landing-module-card:hover .card-arrow{transform:translate(3px)}.landing-features-section{padding-top:var(--space-6);padding-bottom:var(--space-8)}.landing-features-grid{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.feature-item{align-items:flex-start;gap:var(--space-3-5,14px);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5);background:var(--color-surface);display:flex}.feature-icon-badge{border-radius:var(--radius-lg);background:var(--color-bg);border:1px solid var(--color-border);flex-shrink:0;place-items:center;width:40px;height:40px;font-size:20px;display:grid}.feature-text h3{font-family:var(--font-display);color:var(--color-text-primary);letter-spacing:-.02em;margin:0 0 4px;font-size:16px;font-weight:700}.feature-text p{color:var(--color-text-secondary);word-break:keep-all;margin:0;font-size:13px;line-height:1.45}.landing-banner-section{padding-top:var(--space-4);padding-bottom:var(--space-12)}.landing-banner-card{text-align:center;align-items:center;gap:var(--space-3);border-radius:var(--radius-2xl,24px);padding:var(--space-8) var(--space-6);background:linear-gradient(#6366f114 0%,#6366f105 100%);border:1px solid #6366f133;flex-direction:column;display:flex}.landing-banner-card h2{font-family:var(--font-display);letter-spacing:-.035em;margin:0;font-size:clamp(20px,4vw,26px);font-weight:700}.landing-banner-card p{margin:0 0 var(--space-2);color:var(--color-text-secondary);word-break:keep-all;max-width:480px;font-size:14px;line-height:1.5}.catalog-section{padding-top:var(--space-8);padding-bottom:var(--space-16)}.section-heading{justify-content:space-between;align-items:flex-end;gap:var(--space-6);margin-bottom:var(--space-6);display:flex}.section-heading h1,.section-heading h2,.detail-heading h1{font-family:var(--font-display);letter-spacing:-.04em;margin:0;font-size:clamp(24px,4vw,32px);font-weight:700;line-height:1.15}.eyebrow{margin:0 0 var(--space-2);color:var(--color-primary);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.level-tabs,.category-tabs{gap:var(--space-2);width:100%;margin-bottom:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.favorite-tabs{gap:var(--space-2);width:100%;margin-bottom:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.level-tab,.category-tab,.favorite-tab{justify-content:center;align-items:center;gap:var(--space-1-5);border:1px solid var(--color-border);border-radius:var(--radius-pill);width:100%;padding:var(--space-tab-y) var(--space-1);background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--font-size-body-small);white-space:nowrap;cursor:pointer;font-weight:600;transition:all .18s;display:flex}.level-tab:hover,.category-tab:hover,.favorite-tab:hover{border-color:var(--color-neutral);color:var(--color-text-primary)}.level-tab.is-active,.category-tab.is-active,.favorite-tab.is-active{border-color:var(--color-primary);background:var(--color-primary);color:#fff;box-shadow:0 2px 8px var(--color-primary-glow)}.level-tab .tab-count,.category-tab .tab-count,.favorite-tab .tab-count{font-family:var(--font-mono);border-radius:var(--radius-pill);color:inherit;background:#0000000f;padding:1px 6px;font-size:11px;font-weight:700;display:inline-block}.level-tab.is-active .tab-count,.category-tab.is-active .tab-count,.favorite-tab.is-active .tab-count{color:#fff;background:#ffffff40}.catalog-toolbar{gap:var(--space-4);margin-bottom:var(--space-6);display:grid}.search-field{align-items:center;display:flex;position:relative}.search-icon{left:var(--control-icon-inset);width:var(--icon-size-card);height:var(--icon-size-card);color:var(--color-neutral);pointer-events:none;position:absolute}.search-input{width:100%;height:var(--control-height-md);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:0 var(--control-padding-x) 0 var(--control-padding-leading);background:var(--color-surface);color:var(--color-text-primary);font-size:var(--font-size-input);transition:border-color .2s,box-shadow .2s}.search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 var(--focus-ring-width) var(--color-primary-ring);outline:none}.catalog-result-meta{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);color:var(--color-text-secondary);font-size:var(--font-size-body-small);flex-wrap:wrap;display:flex}.result-meta-left{align-items:center;gap:var(--space-3);display:flex}.accordion-bulk-actions{align-items:center;gap:var(--space-1-5);background:var(--color-surface);border:1px solid var(--color-border);padding:var(--space-1) var(--space-2-5);border-radius:var(--radius-pill);display:inline-flex}.bulk-action-btn{padding:var(--space-half) var(--space-1);color:var(--color-text-secondary);font-size:var(--font-size-caption);cursor:pointer;font-weight:500;line-height:var(--line-height-ui);background:0 0;border:none;transition:color .18s}.bulk-action-btn:hover{color:var(--color-primary-hover)}.bulk-action-divider{color:var(--color-border);font-weight:700}.clear-filter{color:var(--color-primary);font-size:var(--font-size-body-small);background:0 0;border:none;padding:0;font-weight:600}.clear-filter:hover{text-underline-offset:var(--text-underline-offset);text-decoration:underline}.pattern-grid{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.word-catalog .pattern-grid{align-items:start}.accordion-pattern-card{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-card-rest);flex-direction:column;transition:all .2s;display:flex;overflow:hidden}.accordion-pattern-card:hover{border-color:var(--color-primary-muted);box-shadow:var(--shadow-card-hover)}.accordion-pattern-card.is-open{border-color:var(--color-primary-muted);background:var(--color-surface);box-shadow:var(--shadow-card-open)}.accordion-header-btn{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4) var(--space-5);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;display:flex}.accordion-header-content{gap:var(--space-1-5);flex-direction:column;min-width:0;display:flex}.accordion-tags{gap:var(--space-1);flex-wrap:wrap;display:flex}.accordion-korean-title{font-family:var(--font-display);font-size:var(--font-size-card-title);color:var(--color-text-primary);letter-spacing:var(--tracking-card-title);font-weight:700;line-height:var(--line-height-card);word-break:keep-all;margin:0}.accordion-header-action{align-items:center;gap:var(--space-1-5);flex-shrink:0;display:flex}.accordion-chevron{width:var(--icon-size-md);height:var(--icon-size-md);color:var(--color-neutral);transition:transform .2s,color .2s}.accordion-chevron.is-open{color:var(--color-primary);transform:rotate(180deg)}.accordion-body{padding:0 var(--space-5) var(--space-5);gap:var(--space-3);border-top:1px dashed var(--color-border);padding-top:var(--space-4);flex-direction:column;display:flex}.accordion-english-box{border:1px solid var(--color-primary-ring);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);background:var(--color-primary-subtle)}.accordion-section-label{font-family:var(--font-mono);font-size:var(--font-size-micro);color:var(--color-primary);letter-spacing:var(--tracking-label);text-transform:uppercase;margin-bottom:var(--space-half);font-weight:700;display:block}.accordion-expression{font-family:var(--font-display);font-size:var(--font-size-expression);color:var(--color-primary-hover);letter-spacing:var(--tracking-expression);margin:0;font-weight:700}.accordion-word-row{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.accordion-word-phonetic{color:var(--color-text-secondary);font-size:13px;font-family:var(--font-mono);font-weight:500}.accordion-structure{margin:var(--space-half) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-caption)}.accordion-usage-note{margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-caption);line-height:var(--line-height-caption)}.accordion-examples-preview{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);background:var(--color-bg)}.accordion-example-item .example-en-text{margin:0 0 var(--space-half);font-size:var(--font-size-body-small);color:var(--color-text-primary);font-weight:600}.accordion-example-item .example-ko-text{font-size:var(--font-size-caption);color:var(--color-text-secondary);margin:0}.accordion-actions-footer{justify-content:space-between;align-items:center;gap:var(--space-2);margin-top:var(--space-1);display:flex}.favorite-icon{width:var(--icon-size-sm);height:var(--icon-size-sm);min-width:var(--icon-size-sm);min-height:var(--icon-size-sm);display:inline-block}.favorite-button-detail{align-items:center;gap:var(--space-1-5);border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:var(--space-1-5) var(--space-3);background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--font-size-caption);cursor:pointer;font-weight:600;line-height:var(--line-height-ui);transition:all .18s;display:inline-flex}.favorite-button-detail:hover{border-color:var(--color-warning);color:var(--color-warning);background:var(--color-warning-subtle)}.favorite-button-detail.is-active{border-color:var(--color-warning);background:var(--color-warning-active-subtle);color:var(--color-warning-active)}.favorite-button-card{width:var(--size-favorite-card);height:var(--size-favorite-card);border-radius:var(--radius-pill);color:var(--color-neutral);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;padding:0;transition:all .18s;display:grid}.favorite-button-card:hover,.favorite-button-card.is-active{color:var(--color-warning)}.accordion-detail-btn{align-items:center;gap:var(--space-1);border:1px solid var(--color-primary);border-radius:var(--radius-pill);padding:var(--space-1-5) var(--space-3-5);background:var(--color-primary);color:var(--color-surface);font-size:var(--font-size-caption);font-weight:600;text-decoration:none;transition:all .18s;display:inline-flex}.accordion-detail-btn:hover{background:var(--color-primary-hover);box-shadow:var(--shadow-primary-hover)}.accordion-arrow-icon{width:var(--icon-size-sm);height:var(--icon-size-sm)}.pattern-card-arrow{width:var(--icon-size-card);height:var(--icon-size-card);color:var(--color-primary)}.pattern-tag{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-half) var(--space-2);background:var(--color-background);color:var(--color-text-secondary);font-size:var(--font-size-overline);font-weight:500}.empty-state{border:1px dashed var(--color-border);border-radius:var(--radius-xl);padding:var(--space-10) var(--space-5);background:var(--color-surface);text-align:center}.empty-state h3{margin:0 0 var(--space-2);font-family:var(--font-display);letter-spacing:-.03em;font-size:20px}.empty-state p{margin:0 0 var(--space-5);color:var(--color-text-secondary);font-size:14px}.favorites-empty-state{border:1px dashed var(--color-border);border-radius:var(--radius-2xl);padding:var(--space-12) var(--space-6);background:var(--color-surface);text-align:center;flex-direction:column;align-items:center;display:flex}.favorites-empty-icon-wrap{border-radius:var(--radius-pill);width:56px;height:56px;color:var(--color-warning);margin-bottom:var(--space-4);background:#f59e0b1f;place-items:center;display:grid}.favorites-empty-icon{width:28px;height:28px}.favorites-empty-state h2{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:20px;font-weight:700}.favorites-empty-state p{margin:0 0 var(--space-6);color:var(--color-text-secondary);font-size:14px;line-height:1.5}.favorites-empty-actions{justify-content:center;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.detail-page{padding-top:var(--space-8);padding-bottom:var(--space-16)}.breadcrumb{align-items:center;gap:var(--space-2);margin-bottom:var(--space-8);color:var(--color-text-secondary);font-size:var(--font-size-body-small);font-weight:500;display:inline-flex}.breadcrumb:hover{color:var(--color-primary-hover)}.breadcrumb-arrow{width:14px;height:14px;transform:rotate(180deg)}.detail-heading{max-width:760px;margin-bottom:var(--space-8)}.detail-heading-top{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.detail-heading-top .eyebrow{margin-bottom:0}.detail-interpretation{margin:var(--space-3) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-detail);line-height:var(--line-height-card);word-break:keep-all}.detail-tags{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.detail-overview{margin-bottom:var(--space-8)}.info-panel{border:1px solid var(--color-primary-info-border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);background:var(--color-primary-subtle)}.info-panel-label{margin-bottom:var(--space-half);color:var(--color-primary);font-family:var(--font-mono);font-size:var(--font-size-micro);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700;display:block}.info-panel p{font-size:var(--font-size-body);color:var(--color-primary-hover);font-weight:600;line-height:var(--line-height-caption);margin:0}.detail-examples-section{gap:var(--space-6);flex-direction:column;display:flex}.detail-examples-heading{gap:var(--space-1);margin-bottom:var(--space-2);flex-direction:column;display:flex}.detail-examples-heading h2{font-family:var(--font-display);font-size:var(--font-size-detail);letter-spacing:var(--tracking-detail-heading);margin:0}.detail-examples-heading p{color:var(--color-text-secondary);font-size:var(--font-size-body-small);margin:0}.example-group{gap:var(--space-3);flex-direction:column;display:flex}.example-group-header{flex-direction:column;gap:3px;display:flex}.example-group-title-wrap{align-items:center;gap:var(--space-2);display:flex}.example-group-badge{font-family:var(--font-mono);border-radius:var(--radius-pill);background:var(--color-primary-muted);color:var(--color-primary);padding:2px 8px;font-size:11px;font-weight:700}.example-group:nth-of-type(2) .example-group-badge{color:var(--color-warning);background:#d977061f}.example-group-title{font-family:var(--font-display);font-size:var(--font-size-subhead);color:var(--color-text-primary);letter-spacing:var(--tracking-expression);margin:0;font-weight:700}.example-group-desc{color:var(--color-text-secondary);font-size:var(--font-size-caption);margin:0}.example-list{gap:var(--space-2);display:grid}.example-item{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);background:var(--color-surface);transition:all var(--duration-fast) ease}.example-item:hover{border-color:var(--color-primary-muted);box-shadow:var(--shadow-example-hover)}.example-item-content{align-items:flex-start;gap:var(--space-3);display:flex}.example-number{font-family:var(--font-mono);font-size:var(--font-size-overline);color:var(--color-neutral);padding-top:var(--space-half);min-width:var(--example-number-width);font-weight:700}.example-text-wrap{gap:var(--space-3-quarter);flex-direction:column;min-width:0;display:flex}.example-en-text{font-size:var(--font-size-body);color:var(--color-text-primary);font-weight:600;line-height:var(--line-height-caption);margin:0}.example-ko-text{font-size:var(--font-size-body-small);color:var(--color-text-secondary);line-height:var(--line-height-caption);margin:0}.example-note{margin:var(--space-half) 0 0;color:var(--color-neutral);font-size:var(--font-size-caption)}.site-footer{justify-content:space-between;align-items:center;gap:var(--space-4);border-top:1px solid var(--color-border);padding-top:var(--space-5);padding-bottom:var(--space-6);color:var(--color-text-secondary);margin-top:auto;font-size:12px;display:flex}.site-footer p{margin:0}.site-footer span{color:var(--color-neutral);font-family:var(--font-mono)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:900px){.pattern-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-modules-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:680px){.page-container{width:min(100% - 28px,1200px)}.site-nav{display:none}.landing-hero{padding-top:var(--space-6);padding-bottom:var(--space-8)}.landing-title{font-size:28px}.landing-cta-group{flex-direction:column;width:100%}.button-lg{width:100%}.landing-modules-grid,.landing-features-grid,.pattern-grid,.detail-overview{grid-template-columns:minmax(0,1fr)}.detail-examples-heading{display:block}.detail-examples-heading p{margin-top:var(--space-1)}.site-footer{text-align:center;display:block}.site-footer span{margin-top:var(--space-1);display:block}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@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-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}
