/*! tailwindcss v4.3.3 | 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-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;--fill:0%}}}@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;--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]){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;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}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}.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}.rounded{border-radius:.25rem}.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)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}}:root{--bg:#0f0f10;--surface:#161617;--raised:#1e1e20;--line:#2f2f33;--text:#ededee;--muted:#9b9ba1;--accent:#f4f4f5;--accent-hover:#d4d4d8;--accent-soft:#f4f4f524;--accent-border:#f4f4f559;--accent-underline:#f4f4f566;--on-accent:#0f0f10;--header-bg:#0f0f10db;--shadow:#000000b3;--map-bg:#0c0c0d;--car-glass:#35353a;--content:76rem;--gutter:clamp(1rem, 4vw, 2.5rem);color-scheme:dark}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bg:#fafafa;--surface:#f1f1f2;--raised:#fff;--line:#dcdcdf;--text:#18181b;--muted:#5c5c63;--accent:#18181b;--accent-hover:#3f3f46;--accent-soft:#18181b12;--accent-border:#18181b4d;--accent-underline:#18181b59;--on-accent:#fafafa;--header-bg:#fafafadb;--shadow:#00000038;--map-bg:#ececee;--car-glass:#c4c4c9;color-scheme:light}}:root[data-theme=light]{--bg:#fafafa;--surface:#f1f1f2;--raised:#fff;--line:#dcdcdf;--text:#18181b;--muted:#5c5c63;--accent:#18181b;--accent-hover:#3f3f46;--accent-soft:#18181b12;--accent-border:#18181b4d;--accent-underline:#18181b59;--on-accent:#fafafa;--header-bg:#fafafadb;--shadow:#00000038;--map-bg:#ececee;--car-glass:#c4c4c9;color-scheme:light}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth;scroll-padding-top:5rem}body{background:var(--bg);color:var(--text);font-family:var(--font-body), system-ui, sans-serif;-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.6;overflow-x:clip}::selection{background:var(--accent);color:var(--on-accent)}a{color:inherit;-webkit-text-decoration-color:var(--line);-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:.3em;text-decoration-thickness:1px;transition:text-decoration-color .16s,color .16s}a:hover{-webkit-text-decoration-color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:2px}h1,h2,h3{font-family:var(--font-display), system-ui, sans-serif;text-wrap:balance;margin:0;font-weight:700;line-height:1.05}p{margin:0}ul,ol,dl,dd{margin:0;padding:0}.site-header{z-index:10;padding:1rem var(--gutter);background:var(--header-bg);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1.5rem;display:flex;position:sticky;top:0}.wordmark{font-family:var(--font-display), sans-serif;letter-spacing:-.01em;white-space:nowrap;font-size:1.125rem;font-weight:700;text-decoration:none}.site-header nav{flex-wrap:wrap;justify-content:flex-end;gap:.25rem 1.5rem;font-size:.9375rem;display:flex}.site-header nav>a{color:var(--muted);text-decoration:none}.site-header nav>a:hover{color:var(--text)}.site-header nav{align-items:center}.site-header .lang-switch{margin-left:.5rem}.lang-switch{border:1px solid var(--line);letter-spacing:.04em;border-radius:999px;padding:2px;font-size:.8125rem;font-weight:600;line-height:1;display:inline-flex}.lang-switch a,.lang-switch span{text-align:center;border-radius:999px;min-width:2.5rem;padding:.4rem .75rem;text-decoration:none}.lang-switch a{color:var(--muted)}.lang-switch a:hover{color:var(--text)}.lang-switch [aria-current]{background:var(--accent);color:var(--on-accent)}.menu-toggle{width:2.75rem;height:2.75rem;color:var(--text);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin-right:-.5rem;padding:0;display:none}.theme-toggle{border:1px solid var(--line);width:2.25rem;height:2.25rem;color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0;transition:color .16s,border-color .16s;display:inline-flex}.theme-toggle:hover{border-color:var(--accent);color:var(--text)}.theme-toggle svg{width:1.125rem;height:1.125rem}.theme-toggle .icon-sun,:root[data-theme-active=light] .theme-toggle .icon-moon{display:block}.theme-toggle .icon-moon,:root[data-theme-active=light] .theme-toggle .icon-sun{display:none}.header-actions{align-items:center;gap:.5rem;display:flex}.menu-toggle-bars,.menu-toggle-bars:before,.menu-toggle-bars:after{background:currentColor;border-radius:1px;width:1.375rem;height:2px;transition:transform .2s,background-color .2s;display:block}.menu-toggle-bars{position:relative}.menu-toggle-bars:before,.menu-toggle-bars:after{content:"";position:absolute;left:0}.menu-toggle-bars:before{transform:translateY(-7px)}.menu-toggle-bars:after{transform:translateY(7px)}.site-header[data-open] .menu-toggle-bars{background:0 0}.site-header[data-open] .menu-toggle-bars:before{transform:rotate(45deg)}.site-header[data-open] .menu-toggle-bars:after{transform:rotate(-45deg)}main,.site-footer{width:min(100% - 2 * var(--gutter), var(--content));margin-inline:auto}.section{border-top:1px solid var(--line);padding-block:clamp(4rem,10vw,7.5rem)}.section-head{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:baseline;gap:1rem 3rem;margin-bottom:clamp(2.5rem,6vw,4rem);display:grid}.section-head h2{letter-spacing:-.03em;font-size:clamp(2.25rem,5vw,3.5rem)}.section-head p{max-width:40ch;color:var(--muted);font-size:1.125rem}.button{border:1px solid var(--line);min-height:2.875rem;color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:999px;align-items:center;padding:.5rem 1.25rem;font-size:.9375rem;font-weight:500;text-decoration:none;transition:border-color .16s,background-color .16s,color .16s;display:inline-flex}.button:hover{border-color:var(--accent)}.button-primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.button-primary:hover{background:var(--accent-hover)}.hero{gap:clamp(2.5rem,5vw,4rem);padding-block:clamp(2.5rem,5vw,4rem) clamp(3rem,6vw,4.5rem);display:grid}.hero-top{flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;margin-bottom:1.5rem;display:flex}.hero-name{font-family:var(--font-display), sans-serif;flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;font-size:1.25rem;font-weight:600;display:flex}.hero-name span{color:var(--muted);font-family:var(--font-body), sans-serif;font-size:1rem;font-weight:400}.hero h1{letter-spacing:-.035em;max-width:20ch;font-size:clamp(2.5rem,5.6vw,4.5rem);font-weight:700;line-height:1}.hero-intro{max-width:54ch;color:var(--muted);margin-top:2rem;font-size:clamp(1.0625rem,1.6vw,1.25rem)}.hero-availability{border:1px solid var(--accent-border);background:var(--accent-soft);border-radius:1.25rem;align-items:center;gap:.625rem;padding:.3125rem .875rem .3125rem .75rem;font-size:.875rem;font-weight:500;display:inline-flex}.hero-availability:before{background:var(--accent);width:.5rem;height:.5rem;box-shadow:0 0 0 4px var(--accent-soft);content:"";border-radius:50%;flex:none}.hero-actions{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.runner{width:100vw;margin:0 calc(50% - 50vw)}.runner-strip{border-block:1px solid var(--line);height:clamp(190px,21vw,280px);position:relative}.runner-canvas{width:100%;height:100%;display:block}.runner-over{justify-content:center;align-items:center;gap:clamp(1rem,3vw,2rem);padding:1.5rem 1rem .5rem;display:flex;position:absolute;inset:0 0 20%}.runner-over-side{justify-items:start;gap:.625rem;display:grid}.runner-big{color:var(--accent);font-family:var(--font-display), sans-serif;letter-spacing:-.04em;font-size:clamp(3.25rem,8vw,6rem);font-weight:700;line-height:1;animation:.35s cubic-bezier(.2,1.6,.4,1) both runner-pop}.runner-record{font-family:var(--font-display), sans-serif;letter-spacing:-.02em;font-size:clamp(1.25rem,2.6vw,1.75rem);font-weight:700;animation:.3s .6s both runner-rise}.runner-retry{background:var(--bg);min-height:2.5rem;animation:.3s .9s both runner-rise}@keyframes runner-pop{0%{opacity:0;transform:scale(.6)}}@keyframes runner-rise{0%{opacity:0;transform:translateY(.5rem)}}.runner figcaption{width:min(100% - 2 * var(--gutter), var(--content));color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1.5rem;margin:1rem auto 0;font-size:.9375rem;display:flex}.runner-play{color:var(--accent);font:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--accent-underline);-webkit-text-decoration-color:var(--accent-underline);text-decoration-color:var(--accent-underline);text-underline-offset:.3em;cursor:pointer;background:0 0;border:0;padding:.25rem 0}.demo{max-width:24rem;margin:2rem 0 0}.demo-stage{aspect-ratio:5/6;border:1px solid var(--line);background:radial-gradient(circle at 50% 45%, var(--raised), transparent 70%), var(--surface);border-radius:1.25rem;position:relative;overflow:hidden}.demo figcaption{margin-top:1rem}.demo-controls{justify-content:space-between;align-items:center;gap:1rem;display:flex}.demo-status{font-variant-numeric:tabular-nums;flex:1;min-width:0;font-size:.9375rem}.demo[data-done] .demo-status{color:var(--accent)}.demo-button{border:1px solid var(--line);min-height:2.5rem;color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:999px;flex:none;padding:.375rem 1rem;font-size:.875rem;transition:border-color .16s,opacity .16s}.demo-button:hover:not(:disabled){border-color:var(--accent)}.demo-button:disabled{cursor:progress;opacity:.5}.demo-caption{max-width:48ch;color:var(--muted);margin-top:.75rem;font-size:.875rem}.scanner-stage{perspective:900px;place-items:center;display:grid}.scanner-doc{aspect-ratio:3/4.4;background:#e8e8ea;border-radius:3px;width:58%;transition:transform .9s cubic-bezier(.65,0,.35,1),box-shadow .9s;position:relative;transform:rotateX(34deg)rotateY(-16deg)rotate(9deg)translateY(4%)scale(.92);box-shadow:0 30px 50px -20px #000000a6}.scanner[data-state=ready] .scanner-doc,.scanner[data-state=correcting] .scanner-doc{transform:none;box-shadow:0 16px 30px -18px #0009}.scanner-corner{width:0;height:0;position:absolute}.scanner-corner:first-child{top:0;left:0}.scanner-corner:nth-child(2){top:0;right:0}.scanner-corner:nth-child(3){bottom:0;right:0}.scanner-corner:nth-child(4){bottom:0;left:0}.receipt{color:#2a2a2e;flex-direction:column;gap:.6em;height:100%;padding:11% 10%;font-size:clamp(.5rem,1.1vw,.75rem);line-height:1.3;display:flex}.receipt-head{font-family:var(--font-display), sans-serif;letter-spacing:-.02em;font-size:1.9em;font-weight:700}.receipt-meta{color:#66666d}.receipt-lines{border-top:1px dashed #ababb1;gap:.7em;margin-top:.6em;padding-top:.9em;list-style:none;display:grid}.receipt-lines li{font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:1em;display:flex}.receipt-lines li span:first-child{width:var(--w);background:#cfcfd3;border-radius:2px;height:.55em}.receipt-total{font-variant-numeric:tabular-nums;border-top:1px solid #ababb1;justify-content:space-between;margin-top:auto;padding-top:.9em;font-size:1.15em;font-weight:600;display:flex}.receipt-code{opacity:.75;background:repeating-linear-gradient(90deg,#2a2a2e 0 2px,#0000 2px 4px,#2a2a2e 4px 5px,#0000 5px 8px);height:2.4em}.scanner-sweep{pointer-events:none;position:absolute;inset:0;overflow:hidden}.scanner-sweep:after{background:linear-gradient(to bottom, transparent, var(--accent-border) 85%, var(--accent));content:"";opacity:0;height:18%;position:absolute;top:0;left:-4%;right:-4%;transform:translateY(-100%)}.scanner[data-state=detecting] .scanner-sweep:after{animation:1.3s ease-in-out sweep}@keyframes sweep{0%{opacity:0;transform:translateY(-100%)}15%{opacity:1}85%{opacity:1}to{opacity:0;transform:translateY(560%)}}.scanner-overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.scanner-outline{fill:var(--accent-soft);stroke:var(--accent);stroke-width:2px;stroke-linejoin:round;stroke-dasharray:100;stroke-dashoffset:100px;opacity:0;transition:opacity .3s,fill .4s}.scanner[data-state=detecting] .scanner-outline{opacity:1;animation:1.1s ease-out .2s forwards trace}.scanner[data-state=correcting] .scanner-outline,.scanner[data-state=ready] .scanner-outline{opacity:1;stroke-dashoffset:0}.scanner[data-state=ready] .scanner-outline{fill:#0000}@keyframes trace{to{stroke-dashoffset:0}}.scanner-handles circle{fill:var(--bg);stroke:var(--accent);stroke-width:2px;opacity:0;transform-box:fill-box;transform-origin:50%;transition:opacity .25s,transform .25s;transform:scale(.4)}.scanner[data-state=detecting] .scanner-handles circle,.scanner[data-state=correcting] .scanner-handles circle,.scanner[data-state=ready] .scanner-handles circle{opacity:1;transform:none}.scanner[data-state=detecting] .scanner-handles circle:nth-child(2){transition-delay:.12s}.scanner[data-state=detecting] .scanner-handles circle:nth-child(3){transition-delay:.24s}.scanner[data-state=detecting] .scanner-handles circle:nth-child(4){transition-delay:.36s}@property --fill{syntax:"<percentage>";inherits:false;initial-value:0%}.tracking-stage{flex-direction:column;gap:.625rem;padding:6% 7% 7%;display:flex}.tracking-route{flex:none;width:100%;overflow:visible}.tracking-route text{fill:var(--muted);text-anchor:middle;font-size:10px}.tracking-route .tracking-code{fill:var(--text);letter-spacing:.06em;font-size:11px;font-weight:600}.tracking-path,.tracking-trail{fill:none;stroke-linecap:round}.tracking-path{stroke:var(--line);stroke-width:1.5px;stroke-dasharray:3 5}.tracking-trail{stroke:var(--accent);stroke-width:2px;stroke-dasharray:100;stroke-dashoffset:100px}.tracking-city{fill:var(--bg);stroke:var(--muted);stroke-width:2px}.tracking-city-end{transition:fill .3s,stroke .3s}.tracking:is([data-state=arrived],[data-state=ready]) .tracking-city-end{fill:var(--accent);stroke:var(--accent)}.tracking-plane path{fill:var(--text)}.tracking-order{border:1px solid var(--line);background:var(--raised);color:var(--muted);font-variant-numeric:tabular-nums;border-radius:.625rem;flex-wrap:wrap;justify-content:space-between;gap:.125rem .75rem;padding:.5rem .75rem;font-size:.6875rem;display:flex}.tracking-item{color:var(--text);font-weight:600}.tracking-steps{flex:1;grid-template-rows:repeat(5,minmax(0,1fr));min-height:0;margin:0;padding:.25rem .25rem 0;list-style:none;display:grid}.tracking-step{color:var(--muted);grid-template-columns:.75rem minmax(0,1fr) auto;align-items:center;gap:.625rem;font-size:.75rem;line-height:1.2;transition:color .25s;display:grid;position:relative}.tracking-step:not(:last-child):before{background:linear-gradient(var(--accent), var(--accent)) top / 100% var(--fill,0%) no-repeat, var(--line);content:"";width:2px;height:calc(100% - 1rem);transition:--fill .3s;position:absolute;top:calc(50% + .5rem);left:calc(.375rem - 1px)}.tracking-step:has(+.tracking-step[data-state]):before{--fill:100%}.tracking-dot{border:2px solid var(--line);background:var(--surface);border-radius:50%;width:.75rem;height:.75rem;transition:background-color .25s,border-color .25s,box-shadow .25s}.tracking-step[data-state]{color:var(--text)}.tracking-step[data-state=current] .tracking-dot{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.tracking-step[data-state=done] .tracking-dot{border-color:var(--accent);background:var(--accent)}.tracking-time{font-variant-numeric:tabular-nums;opacity:0;transition:opacity .25s}.tracking-step[data-state=done] .tracking-time{color:var(--muted);opacity:1}.tracking-notice{z-index:2;border:1px solid var(--line);background:var(--raised);border-radius:.875rem;align-items:flex-start;gap:.75rem;padding:.75rem .875rem;display:flex;position:absolute;top:5%;left:6%;right:6%}@supports (color:color-mix(in lab, red, red)){.tracking-notice{background:color-mix(in srgb, var(--raised) 92%, transparent)}}.tracking-notice{box-shadow:0 18px 30px -16px var(--shadow);color:var(--muted);opacity:0;backdrop-filter:blur(8px);font-size:.6875rem;line-height:1.35;transition:opacity .3s,transform .45s cubic-bezier(.25,1,.5,1);transform:translateY(-130%)}.tracking-notice svg{background:var(--accent);fill:none;width:1.75rem;height:1.75rem;stroke:var(--on-accent);stroke-width:1.8px;stroke-linejoin:round;border-radius:.5rem;flex:none;padding:.3rem}.tracking-notice strong{color:var(--text)}.tracking-notice-title{color:var(--text);font-size:.8125rem;font-weight:600}.tracking[data-state=ready] .tracking-notice{opacity:1;transform:none}.ride-stage{background:var(--map-bg)}.ride-map{width:100%;height:100%;position:absolute;inset:0}.ride-block{fill:var(--surface)}.ride-park{fill:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ride-park{fill:color-mix(in srgb, var(--accent) 10%, var(--surface))}}.ride-street{fill:var(--muted);letter-spacing:.04em;opacity:.7;text-anchor:middle;dominant-baseline:middle;font-size:5.5px}.ride-trip,.ride-drive{fill:none;stroke-linecap:round;stroke-linejoin:round}.ride-trip{stroke:var(--accent);stroke-width:3px;stroke-dasharray:100;stroke-dashoffset:100px;transition:stroke-dashoffset .9s cubic-bezier(.65,0,.35,1)}.ride:not([data-state=idle]) .ride-trip{stroke-dashoffset:0}.ride-drive{stroke:var(--muted);stroke-width:1.5px;stroke-dasharray:2 3;opacity:0;transition:opacity .3s}.ride[data-state=arriving] .ride-drive{opacity:.8}.ride-pin{opacity:0;transition:opacity .25s,transform .45s cubic-bezier(.34,1.56,.64,1);transform:translateY(-14px)}.ride:not([data-state=idle]) .ride-pin{opacity:1;transform:none}.ride:not([data-state=idle]) .ride-destination{transition-delay:.15s}.ride-pickup circle:first-child{fill:var(--accent)}.ride-pickup circle:last-child,.ride-destination rect:last-child{fill:var(--bg)}.ride-destination rect:first-child{fill:var(--text)}.ride-pulse circle{fill:none;stroke:var(--accent);stroke-width:1.5px;opacity:0;transform-box:fill-box;transform-origin:50%}.ride[data-state=searching] .ride-pulse circle{animation:1.4s ease-out infinite ride-pulse}.ride[data-state=searching] .ride-pulse circle:last-child{animation-delay:.7s}@keyframes ride-pulse{0%{opacity:.9;transform:scale(.5)}to{opacity:0;transform:scale(2.6)}}.ride-car{opacity:0;transition:opacity .3s}.ride:is([data-state=arriving],[data-state=arrived]) .ride-car{opacity:1}.ride-car rect:first-child{fill:var(--text)}.ride-car-glass{fill:var(--car-glass)}.ride-sheet{border:1px solid var(--line);background:var(--raised);border-radius:.875rem;height:27%;position:absolute;bottom:4%;left:4%;right:4%}@supports (color:color-mix(in lab, red, red)){.ride-sheet{background:color-mix(in srgb, var(--raised) 94%, transparent)}}.ride-sheet{box-shadow:0 -10px 30px -12px var(--shadow);backdrop-filter:blur(8px)}.ride-panel{color:var(--text);opacity:0;pointer-events:none;flex-direction:column;justify-content:center;gap:.3rem;padding:.75rem .9rem;font-size:.75rem;line-height:1.25;transition:opacity .25s,transform .25s;display:flex;position:absolute;inset:0;transform:translateY(6px)}.ride:is([data-state=idle],[data-state=requesting]) [data-panel=request],.ride[data-state=searching] [data-panel=search],.ride:is([data-state=arriving],[data-state=arrived]) [data-panel=driver]{opacity:1;transform:none}.ride-kicker{color:var(--muted);font-size:.6875rem}.ride-title{font-size:.8125rem;font-weight:600}.ride-place{align-items:center;gap:.5rem;display:flex}.ride-mark{background:var(--accent);border-radius:50%;width:.5rem;height:.5rem}.ride-mark-end{background:var(--text);border-radius:2px}.ride-bar{background:var(--line);border-radius:2px;height:3px;margin-top:.35rem;position:relative;overflow:hidden}.ride-bar:after{border-radius:inherit;background:var(--accent);content:"";width:35%;animation:1.1s ease-in-out infinite ride-bar;position:absolute;inset:0 auto 0 0}@keyframes ride-bar{0%{transform:translate(-100%)}to{transform:translate(290%)}}.ride-driver{flex-direction:row;justify-content:flex-start;align-items:center;gap:.75rem}.ride-driver>div{flex:1;gap:.2rem;min-width:0;display:grid}.ride-avatar{background:var(--accent-soft);width:2.25rem;height:2.25rem;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:.75rem;font-weight:700;display:grid}.ride-here,.ride[data-state=arrived] .ride-on-way{display:none}.ride[data-state=arrived] .ride-here{color:var(--accent);display:block}.ride-eta{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;flex:none;font-size:.6875rem}.ride-eta strong{color:var(--text);font-size:1.25rem;line-height:1;display:block}.ride[data-state=arrived] .ride-eta{opacity:0}.bank-lock,.bank-home{flex-direction:column;padding:7% 8%;display:flex;position:absolute;inset:0}.bank-lock{text-align:center;align-items:center;transition:opacity .4s,transform .5s}.bank[data-state=home] .bank-lock{opacity:0;transform:scale(.94)}.bank-brand{font-family:var(--font-display), sans-serif;letter-spacing:-.02em;font-size:1.125rem;font-weight:700}.bank-greeting{color:var(--muted);margin-top:.25rem;font-size:.8125rem}.bank-print{width:42%;margin:auto 0 1rem;overflow:visible}.bank-ridge,.bank-ridge-fill{fill:none;stroke-linecap:round;stroke-width:3.2px}.bank-ridge{stroke:var(--line)}.bank-ridge-fill{stroke:var(--accent);stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset .25s}.bank:not([data-state=idle]) .bank-ridge-fill{stroke-dashoffset:0;transition:stroke-dashoffset .6s calc(var(--i) * 60ms) ease-in-out}.bank-check{opacity:0;transform-box:fill-box;transform-origin:50%;transition:opacity .2s,transform .35s cubic-bezier(.34,1.56,.64,1);transform:scale(.5)}.bank:is([data-state=verified],[data-state=home]) .bank-check{opacity:1;transform:none}.bank-check circle{fill:var(--accent);stroke:var(--surface);stroke-width:4px}.bank-check path{fill:none;stroke:var(--on-accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:4px}.bank-hint{font-size:.8125rem}.bank-alt{color:var(--accent);margin-top:auto;font-size:.75rem}.bank-home{background:var(--surface);gap:.75rem;transition:transform .55s cubic-bezier(.65,0,.35,1);transform:translateY(100%)}.bank[data-state=home] .bank-home{transform:none}.bank-hello{align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;display:flex}.bank-avatar{background:var(--accent-soft);width:1.75rem;height:1.75rem;color:var(--accent);border-radius:50%;place-items:center;font-size:.75rem;display:grid}.bank-card{color:#f4f4f5;background:radial-gradient(circle at 100% 0,#ffffff2e,#0000 55%),linear-gradient(135deg,#5a5a61,#2a2a2e);border-radius:.875rem;gap:.15rem;padding:.85rem 1rem;display:grid;box-shadow:0 16px 28px -18px #000000e6}.bank-card-top{opacity:.85;justify-content:space-between;margin-bottom:.4rem;font-size:.6875rem;display:flex}.bank-card-top span:first-child{font-family:var(--font-display), sans-serif;opacity:1;font-size:.875rem;font-weight:700}.bank-label{color:var(--muted);font-size:.6875rem}.bank-card .bank-label{color:inherit;opacity:.75}.bank-balance{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:1.375rem;font-weight:700;line-height:1.2}.bank-number{letter-spacing:.08em;opacity:.75;font-size:.6875rem}.bank-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.bank-actions li{border:1px solid var(--line);background:var(--raised);text-align:center;border-radius:.625rem;padding:.45rem .25rem;font-size:.6875rem}.bank-movements{gap:.1rem;margin:-.4rem 0 0;padding:0;list-style:none;display:grid}.bank-movements li{border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;opacity:0;justify-content:space-between;gap:.75rem;padding:.4rem 0;font-size:.75rem;transition:opacity .25s,transform .25s;display:flex;transform:translateY(6px)}.bank-movements li:last-child{border-bottom:0}.bank[data-state=home] .bank-movements li{opacity:1;transition-delay:calc(.45s + var(--i) * 90ms);transform:none}.bank-income{color:var(--accent)}.project-list{display:grid}.project{border-top:1px solid var(--line);grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:1.5rem 3rem;padding-block:clamp(2rem,5vw,3.5rem);display:grid}.project:first-child{border-top:0;padding-top:0}.project-head h3{letter-spacing:-.03em;font-size:clamp(2rem,4vw,3rem)}.project-period{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:.5rem;font-size:.9375rem}.project-product{max-width:38ch;margin-top:1.25rem}.project-stack{flex-wrap:wrap;gap:.5rem;margin-top:1.5rem;list-style:none;display:flex}.project-stack li{background:var(--surface);color:var(--muted);border-radius:999px;padding:.25rem .75rem;font-size:.8125rem}.project-points{gap:1rem;margin-top:1.5rem;list-style:none;display:grid}.project-points:first-child{margin-top:0}.project-points li{max-width:62ch;padding-left:1.5rem;position:relative}.project-points li:before{background:var(--accent);content:"";width:.625rem;height:1px;position:absolute;top:.7em;left:0}.ai-head{gap:1.5rem;margin-bottom:clamp(3rem,7vw,5rem);display:grid}.ai-head h2{color:var(--accent);letter-spacing:.02em;font-size:1rem;font-weight:500}.ai-opener{max-width:26ch;font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.03em;text-wrap:balance;font-size:clamp(2rem,5.2vw,3.75rem);font-weight:600;line-height:1.1}.ai-track{counter-reset:ai-step;border-left:1px solid var(--line);margin-left:.5rem;list-style:none;display:grid}.ai-track li{counter-increment:ai-step;grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:baseline;gap:.5rem 3rem;padding:0 0 clamp(1.75rem,3.5vw,2.5rem) clamp(1.75rem,4vw,3rem);display:grid;position:relative}.ai-track li:last-child{padding-bottom:0}.ai-track li:before{background:var(--accent);content:"";border-radius:50%;width:.5625rem;height:.5625rem;position:absolute;top:.35em;left:-.3125rem}.ai-track h3{letter-spacing:-.02em;font-size:clamp(1.375rem,2.6vw,1.75rem)}.ai-track h3:before{color:var(--accent);font-variant-numeric:tabular-nums;content:"0" counter(ai-step);vertical-align:.15em;margin-right:.75rem;font-size:.875rem;font-weight:500}.ai-track p{max-width:44ch;font-size:1.125rem}.ai-note{border-top:1px solid var(--line);max-width:62ch;color:var(--muted);margin-top:clamp(3rem,7vw,4.5rem);padding-top:1.5rem}.experience-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:3rem;display:grid}.timeline{border-left:1px solid var(--line);list-style:none;display:grid}.timeline li{padding:0 0 2rem 1.75rem;position:relative}.timeline li:last-child{padding-bottom:0}.timeline li:before{border:1px solid var(--muted);background:var(--bg);content:"";border-radius:50%;width:.5625rem;height:.5625rem;position:absolute;top:.45em;left:-.3125rem}.timeline li:first-child:before{border-color:var(--accent);background:var(--accent)}.timeline-period{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.875rem}.timeline h3{letter-spacing:-.01em;margin-top:.25rem;font-size:1.25rem}.timeline p:last-child{color:var(--muted)}.skills h3{margin-bottom:1.25rem;font-size:1.25rem}.skills dl>div{border-top:1px solid var(--line);grid-template-columns:10rem minmax(0,1fr);gap:1rem;padding-block:.875rem;display:grid}.skills dt{color:var(--muted)}.profile{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:3rem;display:grid}.profile .section-head{margin:0;display:block}.profile-text{gap:1.25rem;max-width:58ch;font-size:clamp(1.125rem,1.8vw,1.375rem);line-height:1.5;display:grid}.profile-text p:last-child{color:var(--muted);font-size:1.0625rem;line-height:1.6}.contact h2{letter-spacing:-.045em;font-size:clamp(3rem,9vw,7rem)}.contact-text{max-width:50ch;color:var(--muted);margin-top:1.5rem;font-size:1.125rem}.contact-location{max-width:50ch;color:var(--muted);margin-top:.75rem;font-size:.9375rem}.email-link{color:var(--accent);font-family:var(--font-display), sans-serif;letter-spacing:-.02em;overflow-wrap:anywhere;-webkit-text-decoration-color:var(--accent-underline);-webkit-text-decoration-color:var(--accent-underline);text-decoration-color:var(--accent-underline);margin-top:2.5rem;font-size:clamp(1.25rem,4.2vw,2.75rem);font-weight:600;display:inline-block}.email-link:hover{-webkit-text-decoration-color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.contact-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:2rem;display:flex}.site-footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-block:2rem 3rem;font-size:.875rem;display:flex}@media (width<=960px){.ai-track li{grid-template-columns:minmax(0,1fr)}}@media (width<=760px){.menu-toggle{display:inline-flex}.site-header nav{padding:.5rem var(--gutter) 1rem;background:var(--bg);border-bottom:1px solid var(--line);flex-flow:column;gap:0;font-size:1.0625rem;display:none;position:absolute;top:100%;left:0;right:0}.site-header[data-open] nav{display:flex}.site-header nav>a{border-bottom:1px solid var(--line);padding-block:.75rem}.site-header nav>a:last-of-type{border-bottom:0}.site-header nav{align-items:stretch}.site-header .lang-switch{align-self:flex-start;margin:.5rem 0 0}.lang-switch a,.lang-switch span{padding-block:.65rem}.section-head,.project,.experience-grid,.profile{grid-template-columns:minmax(0,1fr)}.profile{gap:2rem}.skills dl>div{grid-template-columns:minmax(0,1fr);gap:.25rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-delay:0s!important}}.blog-header nav>a[aria-current]{color:var(--text)}.blog-tags{flex-wrap:wrap;gap:.375rem;display:inline-flex}.blog-tags>span{border:1px solid var(--line);border-radius:999px;padding:.1rem .55rem;font-size:.8125rem;line-height:1.5}.blog{width:min(100% - 2 * var(--gutter), 48rem);margin-inline:auto;padding-block:clamp(3rem,8vw,6rem)}.blog-head{border-bottom:1px solid var(--line);padding-bottom:2.5rem}.blog-head h1{letter-spacing:-.02em;font-size:clamp(2.75rem,8vw,5rem)}.blog-head p{color:var(--muted);margin-top:1rem;font-size:1.25rem}.blog-empty{color:var(--muted);padding-block:2.5rem}.blog-empty a{color:var(--text)}.blog-list{list-style:none}.blog-post{border-bottom:1px solid var(--line);padding-block:2rem}.blog-post h2{font-size:clamp(1.5rem,3.5vw,2rem)}.blog-post h2 a{text-decoration:none}.blog-post h2 a:hover{color:var(--accent)}.blog-post-description{color:var(--muted);margin-top:.5rem}.blog-post-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-top:1rem;font-size:.875rem;display:flex}.blog-draft{background:var(--accent);color:var(--on-accent);border-radius:999px;padding:.1rem .55rem;font-size:.8125rem;font-weight:600;display:inline-block}.post-head .blog-draft{margin-bottom:1rem}.post{max-width:var(--content);padding:clamp(2.5rem, 6vw, 5rem) var(--gutter);grid-template-columns:15rem minmax(0,1fr);gap:clamp(2rem,5vw,5rem);margin-inline:auto;display:grid}.post-rail{border-right:1px solid var(--line);align-self:start;gap:2rem;padding-right:1.5rem;font-size:.875rem;display:grid;position:sticky;top:6rem}.post-back{color:var(--muted);text-decoration:none}.post-back:hover{color:var(--text)}.post-facts{gap:1rem;display:grid}.post-facts dt,.post-toc>p{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem}.post-facts dd{margin-top:.25rem}.post-toc>p{margin-bottom:.75rem}.post-toc ol{border-left:1px solid var(--line);list-style:none}.post-toc a{color:var(--muted);border-left:2px solid #0000;margin-left:-1px;padding:.4rem 0 .4rem .9rem;text-decoration:none;transition:color .16s,border-color .16s;display:block}.post-toc a:hover{color:var(--text)}.post-toc a[data-active]{border-left-color:var(--accent);color:var(--text)}.post-main{max-width:44rem}.post-head h1{letter-spacing:-.02em;font-size:clamp(2.5rem,5.5vw,4.25rem)}.post-lede{border-bottom:1px solid var(--line);color:var(--muted);margin-top:1.5rem;padding-bottom:2.5rem;font-size:1.25rem;line-height:1.5}.post-body{margin-top:2.5rem;font-size:1.125rem;line-height:1.75}.post-body>*{max-width:38rem}.post-body>*+*{margin-top:1.5rem}.post-body h2{margin-top:3.5rem;scroll-margin-top:6rem;font-size:clamp(1.5rem,3vw,2rem)}.post-body h2:before{content:"";background:var(--accent);width:2.5rem;height:2px;margin-bottom:1rem;display:block}.post-body h3{margin-top:2.5rem;scroll-margin-top:6rem;font-size:1.375rem}.post-body ul,.post-body ol{padding-left:1.25rem}.post-body li+li{margin-top:.5rem}.post-body blockquote{font-family:var(--font-display), sans-serif;margin:2rem 0;font-size:clamp(1.5rem,3vw,2rem);line-height:1.2}.post-body aside{color:var(--muted);font-size:.9375rem}.post-body img{border-radius:.75rem;max-width:100%;height:auto}.post-body pre{border-block:1px solid var(--line);max-width:none;padding:1.25rem 1.5rem;font-size:.9375rem;line-height:1.6}.post-body :not(pre)>code{background:var(--raised);border-radius:.3rem;padding:.1rem .35rem;font-size:.9em}.post-body .demo{max-width:24rem;margin-block:2.5rem}@media (width<=900px){.post{grid-template-columns:minmax(0,1fr)}.post-rail{border-right:0;border-bottom:1px solid var(--line);padding:0 0 1.5rem;position:static}.post-facts{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr))}}@media (width<=760px){.blog-header nav{background:0 0;border:0;flex-direction:row;align-items:center;gap:1rem;padding:0;font-size:.9375rem;display:flex;position:static}.blog-header nav>a{border:0;padding:0}.blog-header .lang-switch{align-self:center;margin:0}}@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-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}
