/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight: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;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--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;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, 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;--spacing:.25rem;--container-lg:32rem;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-medium:500;--font-weight-semibold:600;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-brand-red:#e63946;--color-brand-red-light:#ff4d5a;--color-brand-red-glow:#e639464d;--color-brand-red-subtle:#e6394614;--color-overlay-dark:#0000008c;--color-overlay-light:#0006;--spacing-nav-h:64px;--spacing-gap:24px;--spacing-container:1200px;--radius-r-sm:6px;--radius-r-md:12px;--radius-r-lg:20px;--font-family-sans:"Inter", "Noto Sans SC", -apple-system, sans-serif;--font-family-display:"Inter", "Noto Sans SC", sans-serif;--font-family-mono:"JetBrains Mono", "Menlo", monospace;--shadow-card-dark:0 4px 24px #0000004d, 0 1px 3px #0003;--shadow-card-light:0 4px 24px #00000014, 0 1px 4px #0000000f, 0 0 0 1px #00000008;--ease-tf:cubic-bezier(.22, 1, .36, 1);--ease-move:cubic-bezier(.25, 1, .5, 1);--breakpoint-container:1200px}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.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}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media(min-width:1200px){.container{max-width:1200px}}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-2{margin:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.max-w-lg{max-width:var(--container-lg)}.min-w-\[8rem\]{min-width:8rem}.flex-shrink{flex-shrink: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}.flex-wrap{flex-wrap:wrap}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.fill-current{fill:currentColor}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.py-\[clamp\(\.\.\.\)\]{padding-block:clamp(...)}.py-\[clamp\(48px\,8vw\,80px\)\]{padding-block:clamp(48px,8vw,80px)}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-wrap{text-wrap:wrap}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.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)}.shadow-card-dark{--tw-shadow:0 4px 24px var(--tw-shadow-color,#0000004d), 0 1px 3px var(--tw-shadow-color,#0003);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-card-light{--tw-shadow:0 4px 24px var(--tw-shadow-color,#00000014), 0 1px 4px var(--tw-shadow-color,#0000000f), 0 0 0 1px var(--tw-shadow-color,#00000008);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.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,)}.backdrop-filter{-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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-move{--tw-ease:var(--ease-move);transition-timing-function:var(--ease-move)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.ease-tf{--tw-ease:var(--ease-tf);transition-timing-function:var(--ease-tf)}}:root{--brand-red:#e63946;--brand-red-light:#ff4d5a;--brand-red-glow:#e639464d;--brand-red-subtle:#e6394614;--font-sans:"Inter", "Noto Sans SC", -apple-system, sans-serif;--font-display:"Inter", "Noto Sans SC", sans-serif;--font-mono:"JetBrains Mono", "Menlo", monospace;--nav-h:64px;--section-pad:clamp(48px, 8vw, 80px);--container:1200px;--gap:24px;--r-sm:6px;--r-md:12px;--r-lg:20px;--ease:cubic-bezier(.22, 1, .36, 1);--ease-move:cubic-bezier(.25, 1, .5, 1);--t-fast:.15s;--t-med:.3s;--t-slow:.5s}[data-theme=dark]{--bg-primary:#08080a;--bg-secondary:#111114;--bg-card:#16161cb3;--bg-card-hover:#1e1e26d9;--bg-glass:#16161c80;--border:#ffffff0f;--border-hover:#ffffff1f;--text-primary:#f0f0f2;--text-secondary:#9a9aaa;--text-tertiary:#78788a;--shadow-card:0 4px 24px #0000004d, 0 1px 3px #0003;--shadow-glow:0 0 40px var(--brand-red-glow), 0 0 80px #e639461a;--code-bg:#0d0d10;--modal-bg:#0000008c;color-scheme:dark}[data-theme=light]{--bg-primary:#fafafa;--bg-secondary:#f0f0f2;--bg-card:#ffffffbf;--bg-card-hover:#ffffffe6;--bg-glass:#ffffff80;--border:#00000012;--border-hover:#00000024;--text-primary:#1a1a1e;--text-secondary:#555560;--text-tertiary:#6e6e78;--shadow-card:0 4px 24px #00000014, 0 1px 4px #0000000f, 0 0 0 1px #00000008;--shadow-glow:0 0 40px #e6394626, 0 0 80px #e639460f;--code-bg:#f5f5f7;--modal-bg:#0006;color-scheme:light}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:hidden}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);transition:background var(--t-med) var(--ease),color var(--t-med) var(--ease);line-height:1.6;overflow-x:hidden}body:before{content:"";background-image:radial-gradient(circle,var(--border) 1px,transparent 1px);opacity:.3;pointer-events:none;z-index:0;background-size:32px 32px;position:fixed;inset:0}body:after{content:"";pointer-events:none;z-index:0;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.03'/%3E%3C/svg%3E");background-size:256px 256px;position:fixed;inset:0}[data-theme=light] body:after{opacity:.3}main,.nav,.footer,.modal-overlay{z-index:1;position:relative}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}img{max-width:100%;display:block}.skip-link{background:var(--brand-red);color:#fff;border-radius:var(--r-sm);z-index:9999;transition:top var(--t-fast);padding:10px 20px;font-size:.9rem;font-weight:600;position:fixed;top:-100px;left:16px}.skip-link:focus-visible{outline-offset:2px;outline:2px solid #fff;top:12px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.container{max-width:var(--container);padding:0 var(--gap);margin:0 auto}.nav{height:var(--nav-h);z-index:100;-webkit-backdrop-filter:blur(20px);background:var(--bg-glass);border-bottom:1px solid var(--border);transition:background var(--t-med) var(--ease);position:fixed;top:0;left:0;right:0}[data-theme=dark] .nav{border-bottom-color:#ffffff17}.nav-inner{max-width:var(--container);padding:0 var(--gap);justify-content:space-between;align-items:center;height:100%;margin:0 auto;display:flex}.nav-logo{letter-spacing:-.02em;transition:opacity var(--t-fast);align-items:center;gap:10px;font-size:1.2rem;font-weight:700;display:flex}.nav-logo:hover{opacity:.8}.logo-img{object-fit:contain;border-radius:0;width:96px;height:auto}.logo-img--light,[data-theme=light] .logo-img--dark{display:none}[data-theme=light] .logo-img--light{display:inline-block}.logo-sub{color:var(--text-tertiary);letter-spacing:.06em;border:1px solid var(--border);white-space:nowrap;border-radius:3px;margin-left:2px;padding:2px 6px;font-size:.65rem;font-weight:500}.nav-links{gap:32px;display:flex}.nav-link{color:var(--text-secondary);transition:color var(--t-fast);padding:4px 0;font-size:.9rem;font-weight:500;position:relative}.nav-link:after{content:"";background:var(--brand-red);width:0;height:2px;transition:width var(--t-med) var(--ease);position:absolute;bottom:-2px;left:0}.nav-link:hover,.nav-link.active{color:var(--text-primary)}.nav-link.active:after{width:100%}.nav-actions{align-items:center;gap:8px;display:flex}.theme-toggle{border-radius:var(--r-md);border:1px solid var(--border);background:var(--bg-card);cursor:pointer;width:44px;height:24px;color:var(--text-primary);transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease);justify-content:space-between;align-items:center;padding:0 5px;display:inline-flex}.theme-toggle:hover{background:var(--bg-card-hover);border-color:var(--border-hover)}.theme-toggle__icon{width:14px;height:14px;color:var(--text-tertiary);opacity:.6;transition:color var(--t-fast) var(--ease),opacity var(--t-fast) var(--ease);justify-content:center;align-items:center;font-size:11px;line-height:1;display:inline-flex}[data-theme=dark] .theme-toggle__icon--moon{color:var(--text-primary);opacity:1}[data-theme=dark] .theme-toggle__icon--sun{color:var(--text-tertiary);opacity:.6}[data-theme=light] .theme-toggle__icon--sun{color:var(--text-primary);opacity:1}[data-theme=light] .theme-toggle__icon--moon{color:var(--text-tertiary);opacity:.6}.lang-switch{display:inline-block;position:relative}.lang-switch__trigger{border:1px solid var(--border);min-width:68px;height:31px;font-size:12.48px;font-family:var(--font-sans);color:var(--text-secondary);cursor:pointer;transition:border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease);background:0 0;border-radius:8px;justify-content:space-between;align-items:center;gap:6px;padding:5.6px 11.2px;font-weight:500;display:inline-flex}.lang-switch__trigger:hover{border-color:var(--border-hover);color:var(--text-primary)}.lang-switch__chev{transform-origin:50%;width:10px;height:10px;transition:transform var(--t-fast) var(--ease);border-bottom:1.25px solid;border-right:1.25px solid;display:inline-block;transform:rotate(45deg)translate(-2px,-2px)}.lang-switch[aria-expanded=true] .lang-switch__chev{transform:rotate(225deg)translate(-2px,-2px)}.lang-switch__menu{background:var(--bg-card-hover);border:1px solid var(--border);-webkit-backdrop-filter:blur(20px);z-index:1000;transform-origin:top;min-width:max(100%,100px);transition:opacity var(--t-fast) var(--ease),transform var(--t-fast) var(--ease);border-radius:8px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 4px 24px #00000014,0 1px 4px #0000000f}.lang-switch__menu[hidden]{display:none}.lang-switch[aria-expanded=false] .lang-switch__menu{opacity:0;pointer-events:none;transform:scaleY(.97)}.lang-switch[aria-expanded=true] .lang-switch__menu{opacity:1;transform:scaleY(1)}.lang-switch__item{color:var(--text-secondary);cursor:pointer;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease);border-radius:4px;padding:6px 10px;font-size:12.48px;display:block}.lang-switch__item:hover,.lang-switch__item--active{background:var(--bg-card);color:var(--text-primary)}.lang-switch__item--active:after{content:"✓";float:right;color:var(--brand-red);font-size:11px}.nav-cta{background:var(--brand-red);color:#fff;border-radius:var(--r-sm);transition:background var(--t-fast) ease,box-shadow var(--t-fast) ease,transform var(--t-fast) ease;white-space:nowrap;padding:8px 20px;font-size:.85rem;font-weight:600}.nav-cta:hover{background:var(--brand-red-light);box-shadow:var(--shadow-glow);transform:translateY(-1px)}.nav-cta:active{transform:scale(.97)}.nav-burger{flex-direction:column;gap:5px;padding:8px;display:none}.nav-burger span{background:var(--text-primary);width:20px;height:2px;transition:transform var(--t-fast) ease,opacity var(--t-fast) ease;border-radius:1px}.nav-burger.open span:first-child{transform:rotate(45deg)translate(5px,5px)}.nav-burger.open span:nth-child(2){opacity:0}.nav-burger.open span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.mobile-menu{top:var(--nav-h);background:var(--bg-primary);padding:40px var(--gap);z-index:99;opacity:0;pointer-events:none;visibility:hidden;transition:opacity .15s var(--ease),visibility .15s;overscroll-behavior:contain;flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-menu.open{opacity:1;pointer-events:all;visibility:visible;transition:opacity .22s var(--ease),visibility .22s}.mobile-link{border-bottom:1px solid var(--border);color:var(--text-secondary);transition:color var(--t-fast);padding:16px 0;font-size:1.5rem;font-weight:600}.mobile-link:hover{color:var(--text-primary)}.mobile-link.cta{color:var(--brand-red);border:none;margin-top:16px}@media(max-width:768px){.nav-links,.nav-cta{display:none}.nav-burger{display:flex}}main{padding-top:var(--nav-h);min-height:100vh}.section{padding:var(--section-pad) 0;max-width:var(--container);padding-left:var(--gap);padding-right:var(--gap);margin:0 auto;position:relative}.section+.section:before{content:"";background:linear-gradient(90deg,transparent,var(--brand-red) 30%,var(--brand-red-light) 70%,transparent);opacity:.5;border-radius:1px;width:60px;height:1px;position:absolute;top:0;left:50%;transform:translate(-50%)}.section+.section:after{content:"";filter:blur(2px);pointer-events:none;background:radial-gradient(#e6394626,#0000 70%);width:120px;height:3px;position:absolute;top:-1px;left:50%;transform:translate(-50%)}.section-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.15em;color:var(--brand-red);background:var(--brand-red-subtle);border:1px solid #e6394626;border-radius:4px;margin-bottom:12px;padding:4px 12px;font-size:.75rem;font-weight:600;display:inline-block}.section-title{font-family:var(--font-display);letter-spacing:-.03em;text-wrap:balance;margin-bottom:16px;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:800;line-height:1.15}.section-desc{color:var(--text-secondary);max-width:600px;font-size:1.05rem;line-height:1.7}.hero{min-height:calc(100vh - var(--nav-h));max-width:var(--container);padding:60px var(--gap) var(--section-pad);grid-template-columns:1.1fr .9fr;align-items:center;gap:60px;margin:0 auto;display:grid;position:relative;overflow:hidden}.hero:before{content:"";filter:blur(60px);pointer-events:none;background:radial-gradient(circle,#e639461f,#0000 70%);border-radius:50%;width:500px;height:500px;animation:8s ease-in-out infinite orb-float;position:absolute;top:10%;left:-15%}.hero:after{content:"";filter:blur(80px);pointer-events:none;z-index:0;background:radial-gradient(circle,#e6394614,#ff6b7a0a 40%,#0000 70%);border-radius:50%;width:400px;height:400px;animation:10s ease-in-out infinite orb-float-2;position:absolute;bottom:5%;right:-10%}@keyframes orb-float{0%,to{transform:translate(0)scale(1)}33%{transform:translate(30px,-20px)scale(1.05)}66%{transform:translate(-20px,15px)scale(.95)}}@keyframes orb-float-2{0%,to{transform:translate(0)scale(1)}40%{transform:translate(-25px,15px)scale(1.08)}70%{transform:translate(15px,-25px)scale(.92)}}[data-theme=dark] .hero{background:linear-gradient(160deg,#e6394608,#0000 40%,#08080a80)}.hero-badge{background:var(--brand-red-subtle);font-family:var(--font-mono);color:var(--brand-red);border:1px solid #e6394633;border-radius:100px;align-items:center;gap:8px;margin-bottom:28px;padding:6px 14px;font-size:.75rem;font-weight:600;animation:3s ease-in-out infinite badge-pulse;display:inline-flex}.hero-badge .dot{background:var(--brand-red);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite dot-blink}@keyframes badge-pulse{0%,to{box-shadow:0 0 #e6394626}50%{box-shadow:0 0 0 8px #e6394600}}@keyframes dot-blink{0%,to{opacity:1}50%{opacity:.3}}.hero-title{font-size:clamp(2.2rem,5.5vw,3.6rem);font-family:var(--font-display);letter-spacing:-.04em;text-wrap:balance;margin-bottom:20px;font-weight:800;line-height:1.08}.hero-title .line-1{opacity:.9;letter-spacing:-.02em;font-size:.85em;display:block}.hero-title .highlight{background:linear-gradient(135deg,var(--brand-red) 0%,var(--brand-red-light) 40%,#ff6b7a 70%,#ff8a95 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.1em;position:relative}[data-theme=dark] .hero-title .highlight{filter:drop-shadow(0 0 12px #e6394659)}.hero-subtitle{color:var(--text-secondary);max-width:520px;margin-bottom:36px;font-size:clamp(1rem,1.8vw,1.15rem);line-height:1.7}.hero-terminal{background:var(--code-bg);border:1px solid var(--border);border-radius:var(--r-md);font-family:var(--font-mono);color:var(--text-secondary);max-width:460px;padding:0;font-size:.85rem;position:relative;overflow:hidden;box-shadow:0 8px 32px #0000004d,inset 0 1px #ffffff0a}[data-theme=dark] .hero-terminal{background:linear-gradient(170deg,#0e0e12,#0d0d10,#0b0b0f)}[data-theme=light] .hero-terminal{box-shadow:0 8px 32px #00000014,inset 0 1px #ffffff80}.hero-terminal:before{content:"";background:var(--bg-card);border-bottom:1px solid var(--border);height:36px;display:block;position:relative}.hero-terminal:after{content:"";background:#ff5f57;border-radius:50%;width:8px;height:8px;position:absolute;top:10px;left:14px;box-shadow:16px 0 #febc2e,32px 0 #28c840}.hero-terminal>div:first-child{padding:16px 20px 4px}.hero-terminal>div:last-child{padding:0 20px 16px}.hero-terminal .prompt{color:var(--brand-red)}.hero-terminal .cmd{color:var(--text-primary)}.hero-terminal .cursor{background:var(--brand-red);vertical-align:text-bottom;width:8px;height:16px;margin-left:2px;animation:1s step-end infinite cursor-blink;display:inline-block}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}.terminal-result-fade{animation:terminal-result-appear .6s var(--ease) both}@keyframes terminal-result-appear{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.hero-right{flex-direction:column;gap:12px;display:flex}.hybrid-card{background:var(--bg-card);border:1px solid var(--border);border-left:3px solid var(--brand-red);border-radius:var(--r-md);transition:border-color var(--t-fast) var(--ease);cursor:pointer;-webkit-backdrop-filter:blur(12px)saturate(1.2);text-decoration:none;display:block;position:relative;overflow:hidden}.hybrid-card[data-accent=blue]{border-left-color:#3b82f6}.hybrid-card[data-accent=amber]{border-left-color:#f59e0b}@media(hover:hover)and (pointer:fine){.hybrid-card{transition:transform .14s var(--ease),box-shadow .14s var(--ease),border-color .14s var(--ease)}.hybrid-card:hover{box-shadow:var(--shadow-card);border-color:var(--border-hover);transform:translateY(-3px)scale(1.01)}.hybrid-card[data-accent=red]:hover{border-left-color:var(--brand-red-light);box-shadow:0 6px 28px #e639462e,var(--shadow-card)}.hybrid-card[data-accent=blue]:hover{box-shadow:0 6px 28px #3b82f62e,var(--shadow-card);border-left-color:#60a5fa}.hybrid-card[data-accent=amber]:hover{box-shadow:0 6px 28px #f59e0b2e,var(--shadow-card);border-left-color:#fbbf24}}.hybrid-card:active{transform:scale(.98)}.hybrid-bar{border-bottom:1px solid var(--border);background:#ffffff08;align-items:center;gap:8px;padding:7px 14px;display:flex}[data-theme=light] .hybrid-bar{background:#00000005}.hybrid-dot{background:var(--brand-red);border-radius:50%;flex-shrink:0;width:7px;height:7px}.hybrid-card[data-accent=blue] .hybrid-dot{background:#3b82f6}.hybrid-card[data-accent=amber] .hybrid-dot{background:#f59e0b}.hybrid-label{font-family:var(--font-mono);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.1em;flex:1;font-size:.68rem;font-weight:600}.hybrid-status{font-family:var(--font-mono);color:var(--brand-red);letter-spacing:.05em;background:#e639461f;border-radius:100px;padding:1px 7px;font-size:.58rem;font-weight:600}.hybrid-status.blue{color:#3b82f6;background:#3b82f61f}.hybrid-status.amber{color:#f59e0b;background:#f59e0b1f}.hybrid-body{padding:12px 14px 14px}.hybrid-row{align-items:baseline;gap:5px;margin-bottom:6px;display:flex}.hybrid-num{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.03em;transition:text-shadow var(--t-fast) ease;font-variant-numeric:tabular-nums;font-size:1.8rem;font-weight:800;line-height:1}.hybrid-card[data-accent=red] .hybrid-num{color:var(--brand-red)}.hybrid-card[data-accent=blue] .hybrid-num{color:#3b82f6}.hybrid-card[data-accent=amber] .hybrid-num{color:#f59e0b}.hybrid-card[data-accent=red]:hover .hybrid-num{text-shadow:0 0 20px #e639464d}.hybrid-card[data-accent=blue]:hover .hybrid-num{text-shadow:0 0 20px #3b82f64d}.hybrid-card[data-accent=amber]:hover .hybrid-num{text-shadow:0 0 20px #f59e0b4d}.hybrid-unit{color:var(--text-secondary);font-size:.78rem;font-weight:500}.hybrid-cmd{font-family:var(--font-mono);color:var(--text-secondary);opacity:.7;margin-bottom:8px;font-size:.72rem}.hybrid-prompt{color:var(--brand-red);margin-right:4px}.hybrid-card[data-accent=blue] .hybrid-prompt{color:#3b82f6}.hybrid-card[data-accent=amber] .hybrid-prompt{color:#f59e0b}.hybrid-tags{flex-wrap:wrap;gap:4px;display:flex}.hybrid-tag{font-family:var(--font-mono);color:var(--text-secondary);border:1px solid var(--border);background:#ffffff0a;border-radius:4px;padding:2px 8px;font-size:.62rem}[data-theme=light] .hybrid-tag{background:#00000008}.hybrid-progress{background:var(--border);border-radius:3px;height:3px;margin-bottom:6px;overflow:hidden}.hybrid-progress-fill{height:100%;width:var(--w,50%);background:linear-gradient(90deg,#3b82f6,#60a5fa);border-radius:3px}.hybrid-meta{font-family:var(--font-mono);color:var(--text-tertiary);font-size:.62rem}.hybrid-meta-sep{opacity:.4;margin:0 4px}.hybrid-list{flex-direction:column;gap:3px;display:flex}.hybrid-li{color:var(--text-secondary);align-items:center;gap:5px;font-size:.72rem;display:flex}.hybrid-li-dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:5px;height:5px}@media(max-width:900px){.hero{grid-template-columns:1fr;gap:40px;min-height:auto;padding-top:40px}.hero-right{flex-flow:wrap}.hybrid-card{flex:1;min-width:240px}}@media(max-width:560px){.hero-right{flex-direction:column}.hero-terminal{word-break:break-all;max-width:100%;font-size:.78rem}}.products-grid{gap:var(--gap);grid-template-columns:repeat(2,1fr);margin-top:40px;display:grid}@media(max-width:600px){.products-grid{grid-template-columns:1fr}}.product-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);-webkit-backdrop-filter:blur(16px)saturate(1.3);transition:border-color var(--t-fast) var(--ease);flex-direction:column;padding:32px;display:flex;position:relative;overflow:hidden}.product-card:after{content:"";background:var(--brand-red-subtle);clip-path:polygon(100% 0,0 0,100% 100%);width:80px;height:80px;transition:opacity var(--t-fast) var(--ease);position:absolute;top:0;right:0}@media(hover:hover)and (pointer:fine){.product-card{transition:transform .14s var(--ease),box-shadow .14s var(--ease),border-color .14s var(--ease)}.product-card:hover{box-shadow:var(--shadow-card),0 0 24px #e639460f;border-color:#e6394633;transform:translateY(-3px)scale(1.01)}.product-card:hover:after{opacity:1.5}}.product-card:active{transform:scale(.98)}.product-tag{font-family:var(--font-mono);background:var(--brand-red-subtle);color:var(--brand-red);text-transform:uppercase;letter-spacing:.08em;border-radius:3px;width:fit-content;margin-bottom:16px;padding:3px 8px;font-size:.7rem;font-weight:600;display:inline-flex}.product-card h3{letter-spacing:-.02em;margin-bottom:8px;font-size:1.25rem;font-weight:700}.product-card .desc{color:var(--text-secondary);flex:1;margin-bottom:20px;font-size:.9rem;line-height:1.6}.product-features{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}.product-feature{color:var(--text-secondary);border:1px solid var(--border);white-space:nowrap;border-radius:100px;padding:4px 10px;font-size:.75rem}.product-actions{gap:10px;margin-top:auto;display:flex}.btn-primary{background:var(--brand-red);color:#fff;border-radius:var(--r-sm);transition:background var(--t-fast) ease,box-shadow var(--t-fast) ease,transform var(--t-fast) ease;cursor:pointer;border:none;padding:10px 22px;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-block}.btn-primary:hover{background:var(--brand-red-light);box-shadow:var(--shadow-glow);transform:translateY(-1px)}.btn-primary:active{transform:scale(.97)}button.btn-primary{line-height:normal}.btn-secondary{color:var(--text-secondary);border-radius:var(--r-sm);border:1px solid var(--border);transition:border-color var(--t-fast) ease,color var(--t-fast) ease;cursor:pointer;background:0 0;padding:10px 22px;font-size:.85rem;font-weight:500;text-decoration:none;display:inline-block}.btn-secondary:hover{border-color:var(--border-hover);color:var(--text-primary)}.btn-secondary:active{transform:scale(.97)}@media(max-width:768px){.products-grid{grid-template-columns:1fr}}.product-badge{z-index:2;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;pointer-events:none;border-radius:4px;padding:3px 7px;font-size:.65rem;font-weight:700;line-height:1;position:absolute;top:16px;right:18px}.product-badge--new{background:var(--brand-red);color:#fff}.product-badge--hot{background:var(--brand-red-subtle);color:var(--brand-red);border:1px solid var(--brand-red)}.resources-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.resource-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);-webkit-backdrop-filter:blur(16px)saturate(1.3);transition:border-color var(--t-fast) var(--ease);flex-direction:column;padding:24px;display:flex}@media(hover:hover)and (pointer:fine){.resource-card{transition:transform .14s var(--ease),box-shadow .14s var(--ease),border-color .14s var(--ease)}.resource-card:hover{box-shadow:var(--shadow-card),0 0 20px #e639460d;border-color:#e639462e;transform:translateY(-2px)scale(1.005)}}.resource-meta{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.resource-type{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;border-radius:3px;padding:2px 8px;font-size:.7rem;font-weight:600}.resource-type.skill{color:#3b82f6;background:#3b82f61f}.resource-type.prompt{color:#a855f7;background:#a855f71f}.resource-type.workflow{color:#22c55e;background:#22c55e1f}.resource-platform{border:1px solid var(--border);color:var(--text-tertiary);border-radius:3px;padding:2px 8px;font-size:.7rem;font-weight:500}.resource-card h3{margin-bottom:6px;font-size:1rem;font-weight:600}.resource-card .desc{color:var(--text-secondary);flex:1;margin-bottom:16px;font-size:.85rem;line-height:1.6}.resource-action{justify-content:flex-end;display:flex}.resource-action .btn-sm{transition:background var(--t-fast) ease;cursor:pointer;border:1px solid #0000;border-radius:4px;padding:6px 16px;font-size:.8rem;font-weight:600;text-decoration:none;display:inline-block}.btn-install{color:#3b82f6;background:#3b82f61a;border-color:#3b82f633}.btn-install:hover{background:#3b82f633}.btn-copy{color:#a855f7;background:#a855f71a;border-color:#a855f733}.btn-copy:hover{background:#a855f733}.btn-view{color:var(--text-secondary);border-color:var(--border);background:0 0}.btn-view:hover{background:var(--bg-card-hover);color:var(--text-primary)}.resource-action--row{gap:8px}@media(max-width:768px){.resources-grid{grid-template-columns:1fr}}.install-banner{background:var(--code-bg);border:1px solid var(--border);border-radius:var(--r-md);justify-content:space-between;align-items:center;gap:20px;margin-top:32px;padding:24px 28px;display:flex}.install-banner .code{font-family:var(--font-mono);color:var(--text-primary);font-size:.85rem}.install-banner .code .prompt{color:var(--brand-red)}.install-banner-desc{color:var(--text-tertiary);margin-top:4px;font-size:.8rem}@media(max-width:768px){.install-banner{text-align:center;flex-direction:column}}.articles-grid{gap:var(--gap);grid-template-columns:repeat(3,1fr);display:grid}.article-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);-webkit-backdrop-filter:blur(16px)saturate(1.3);transition:border-color var(--t-fast) var(--ease);flex-direction:column;padding:28px;display:flex;position:relative}@media(hover:hover)and (pointer:fine){.article-card{transition:transform .14s var(--ease),box-shadow .14s var(--ease),border-color .14s var(--ease)}.article-card:hover{box-shadow:var(--shadow-card),0 0 20px #e639460d;border-color:#e639462e;transform:translateY(-2px)scale(1.005)}}.article-card .new-badge{font-family:var(--font-mono);background:var(--brand-red);color:#fff;text-transform:uppercase;letter-spacing:.1em;border-radius:3px;padding:2px 6px;font-size:.65rem;font-weight:700;position:absolute;top:16px;right:16px}.article-card--featured{border-left:3px solid var(--brand-red);background:linear-gradient(135deg,#e639460a 0%,var(--bg-card) 60%);grid-column:span 2;padding-left:25px}.article-card--featured .new-badge{display:inline-block;position:static;top:auto;right:auto}.article-card__top-row{align-items:center;gap:8px;margin-bottom:12px;display:flex}.article-card__top-row .article-category{margin-bottom:0}.article-card__top-row .article-date{font-family:var(--font-mono);color:var(--text-tertiary);margin-bottom:0;margin-left:auto;font-size:.75rem}.article-card--featured h3{font-size:1.2rem}.article-card--featured .desc{-webkit-line-clamp:4}@media(max-width:560px){.article-card--featured{grid-column:span 1}}.article-date{font-family:var(--font-mono);color:var(--text-tertiary);margin-bottom:8px;font-size:.75rem;display:inline-block}.article-category{color:var(--brand-red);margin-bottom:12px;font-size:.75rem;font-weight:600;display:inline-block}.article-author{color:var(--text-tertiary);margin-bottom:8px;font-size:.75rem;display:inline-block}.article-card h3{letter-spacing:-.01em;margin-bottom:8px;font-size:1.05rem;font-weight:700;line-height:1.4}.article-card__title-link{color:var(--text-primary);text-decoration:none}.article-card__title-link:hover{color:var(--brand-red)}.article-card .desc{color:var(--text-secondary);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;margin-bottom:16px;font-size:.85rem;line-height:1.6;display:-webkit-box;overflow:hidden}.article-tags{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.article-tag{border:1px solid var(--border);color:var(--text-tertiary);border-radius:3px;padding:3px 8px;font-size:.7rem;font-weight:500}.article-tag:hover{border-color:var(--border-hover)}.article-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding-top:12px;display:flex}.article-interact{gap:16px;display:flex}.interact-btn{color:var(--text-tertiary);cursor:pointer;transition:color var(--t-fast);background:0 0;border:none;align-items:center;gap:4px;padding:4px 0;font-size:.8rem;line-height:normal;display:flex}.interact-btn:hover{color:var(--text-primary)}.interact-btn:active{transform:scale(.93)}.interact-btn.liked{color:var(--brand-red)}.interact-btn .like-icon{fill:currentColor;width:16px;height:16px}.interact-btn[data-liked=false] .like-icon{fill:#0000;stroke:currentColor;stroke-width:1.8px}@media(max-width:900px){.articles-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.articles-grid{grid-template-columns:1fr}}.practice-detail{max-width:720px;padding:60px var(--gap) 40px;margin:0 auto}.practice-detail__back{font-family:var(--font-mono);color:var(--text-tertiary);transition:color var(--t-fast);margin-bottom:24px;font-size:.85rem;display:inline-block}.practice-detail__back:hover{color:var(--brand-red)}.practice-detail__head{margin-bottom:32px}.practice-detail__meta{align-items:center;gap:12px;margin-bottom:12px;display:flex}.practice-detail__meta .article-date,.practice-detail__meta .article-author,.practice-detail__meta .article-category{margin-bottom:0}.practice-detail__title{letter-spacing:0;text-wrap:balance;margin-bottom:12px;font-size:clamp(1.6rem,3.4vw,2.4rem);font-weight:800;line-height:1.25}.practice-detail__desc{color:var(--text-secondary);margin-bottom:16px;font-size:1.05rem;line-height:1.65}.practice-detail__body{border-top:1px solid var(--border);color:var(--text-primary);padding-top:24px;font-size:1rem;line-height:1.6}.practice-detail__body h1,.practice-detail__body h2,.practice-detail__body h3,.practice-detail__body h4{color:var(--text-primary);letter-spacing:0;margin:32px 0 12px;font-weight:700}.practice-detail__body h1{font-size:1.5rem}.practice-detail__body h2{font-size:1.3rem}.practice-detail__body h3{font-size:1.1rem}.practice-detail__body h4{font-size:1rem}.practice-detail__body p{margin-bottom:16px}.practice-detail__body ul,.practice-detail__body ol{margin-bottom:16px;padding-left:1.5em}.practice-detail__body li{margin-bottom:6px}.practice-detail__body code{font-family:var(--font-mono);background:var(--code-bg);color:var(--text-primary);border-radius:3px;padding:2px 5px;font-size:.85em}.practice-detail__body pre{font-family:var(--font-mono);background:var(--code-bg);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--r-md);margin:16px 0;padding:16px;font-size:.85rem;line-height:1.6;overflow-x:auto}.practice-detail__body pre.astro-code{background:var(--code-bg)!important;color:var(--text-primary)!important}.practice-detail__body pre code{color:inherit;font-size:inherit;padding:0;background:0 0!important}[data-theme=light] .practice-detail__body pre.astro-code span{color:var(--text-primary)!important}.practice-detail__body blockquote{border-left:3px solid var(--brand-red);background:var(--brand-red-subtle);color:var(--text-secondary);border-radius:0 var(--r-sm) var(--r-sm) 0;margin:16px 0;padding:12px 16px}.practice-detail__body table{border-collapse:collapse;width:100%;margin:16px 0;font-size:.9rem}.practice-detail__body th,.practice-detail__body td{border:1px solid var(--border);text-align:left;padding:8px 12px}.practice-detail__body th{background:var(--code-bg);font-weight:600}.practice-detail__body strong{font-weight:700}.practice-detail__body em{font-style:italic}.practice-detail__body a{color:var(--brand-red-light);text-decoration:none}.practice-detail__body a:hover{text-decoration:underline}.practice-detail__empty{color:var(--text-tertiary);padding:24px 0;font-size:.95rem}.practice-detail__foot{border-top:1px solid var(--border);margin-top:40px;padding-top:20px}.practice-detail__foot .like-button{color:var(--text-tertiary);transition:color var(--t-fast);background:0 0;border:0;border-radius:0;gap:4px;padding:4px 0;font-size:.8rem}.practice-detail__foot .like-button:hover,.practice-detail__foot .share-btn:hover{color:var(--text-primary)}.practice-detail__foot .like-button:active,.practice-detail__foot .share-btn:active{transform:scale(.93)}.practice-detail__foot .like-button[data-liked=true]{color:var(--brand-red)}.practice-detail__foot .like-button .like-icon{fill:currentColor;width:16px;height:16px}.practice-detail__foot .like-button[data-liked=false] .like-icon{fill:#0000;stroke:currentColor;stroke-width:1.8px}.practice-detail__related{max-width:var(--container);padding:20px var(--gap) 60px;margin:0 auto}.practice-detail__related .section-label{margin-bottom:16px;display:block}@media(max-width:560px){.practice-detail{padding:40px 16px 24px}.practice-detail__related{padding-left:16px;padding-right:16px}.practice-detail__title{font-size:1.5rem}.practice-detail__desc,.practice-detail__body{font-size:.95rem}.practice-detail__body h2{margin-top:24px;font-size:1.15rem}.practice-detail__body pre{padding:12px;font-size:.78rem}}.join-section{padding:var(--section-pad) 0;text-align:center;position:relative}.join-section:before{content:"";pointer-events:none;border-radius:var(--r-lg);background:linear-gradient(#0000,#e639460f 30%,#e639461a,#e639460f 70%,#0000);position:absolute;inset:0}.join-section .section-title{max-width:600px;margin:0 auto 16px}.join-section .section-desc{text-align:center;margin:0 auto 32px}.join-section .section-label{display:none}.join-cta-btn{margin-top:8px;padding:14px 32px;font-size:1rem}.page-header{max-width:var(--container);padding:60px 0 20px;padding-left:var(--gap);padding-right:var(--gap);margin:0 auto}.page-header h1{letter-spacing:-.03em;text-wrap:balance;margin-bottom:8px;font-size:clamp(2rem,4vw,3rem);font-weight:800}.page-header p{color:var(--text-secondary);max-width:600px;font-size:1.05rem}.page-header .section-label{margin-bottom:12px}.footer{border-top:1px solid var(--border);padding:48px 0 24px}.footer-inner{max-width:var(--container);padding:0 var(--gap);grid-template-columns:1.5fr 1fr 1fr 1.5fr;gap:40px;margin:0 auto;display:grid}.footer-brand{align-items:center;gap:8px;margin-bottom:10px;font-size:1.1rem;font-weight:700;display:flex}.footer-brand .logo-img{border-radius:0;width:84px;height:auto}.footer-tagline{color:var(--text-secondary);letter-spacing:.02em;margin-bottom:4px;font-size:.95rem;font-style:italic;font-weight:600}.footer-tagline-desc{color:var(--text-tertiary);font-size:.82rem;line-height:1.6}.footer-col{flex-direction:column;gap:10px;display:flex}.footer-col-title{font-size:.8rem;font-weight:700;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-primary);margin-bottom:4px}.footer-col-link{color:var(--text-tertiary);transition:color var(--t-fast);font-size:.85rem;text-decoration:none}.footer-col-link:hover{color:var(--text-primary)}.footer-social-grid{grid-template-columns:1fr 1fr;gap:8px 16px;display:grid}.footer-social-link{color:var(--text-tertiary);transition:color var(--t-fast);white-space:nowrap;align-items:center;gap:5px;font-size:.82rem;text-decoration:none;display:inline-flex}.footer-social-link svg{vertical-align:middle;flex-shrink:0}.footer-social-link:hover{color:var(--brand-red)}.footer-contact{border-top:1px solid var(--border);flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;display:flex}.footer-contact-link:hover{color:var(--text-primary)!important}.footer-bottom{border-top:1px solid var(--border);flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:16px;margin-top:8px;padding-top:24px;display:flex}.footer-legal{color:var(--text-tertiary);flex-wrap:wrap;flex-basis:100%;align-items:center;gap:8px;min-width:0;font-size:.75rem;display:flex}.footer-legal-address{overflow-wrap:break-word;word-break:break-all;min-width:0}.footer-legal-company{font-weight:500}.footer-legal-address:before{content:"｜";opacity:.4;margin-right:8px}.footer-copy{color:var(--text-tertiary);font-size:.75rem}.footer-beian{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.footer-beian a{color:var(--text-tertiary);transition:color var(--t-fast);overflow-wrap:break-word;word-break:break-all;align-items:center;gap:4px;font-size:.75rem;text-decoration:none;display:flex}.footer-beian a:hover{color:var(--text-secondary)}.footer-beian img{width:14px;height:14px}@media(max-width:900px){.footer-inner{grid-template-columns:1fr 1fr 1fr}.footer-brand-col{grid-column:1/-1}}@media(max-width:768px){.footer-legal-address:before{content:none;margin-right:0}}@media(max-width:560px){.footer-inner{grid-template-columns:1fr 1fr}.footer-bottom{flex-flow:column;align-items:flex-start;gap:8px}}.reveal--enhance .reveal{opacity:0;transition:opacity var(--t-slow) var(--ease),transform var(--t-slow) var(--ease);transform:translateY(16px)}.reveal--enhance .stagger>*{opacity:0;transition:opacity var(--t-med) var(--ease),transform var(--t-med) var(--ease);transform:translateY(12px)}.reveal.visible,.stagger.visible>*{opacity:1;transform:translateY(0)}.stagger.visible>:first-child{transition-delay:40ms}.stagger.visible>:nth-child(2){transition-delay:80ms}.stagger.visible>:nth-child(3){transition-delay:.12s}.stagger.visible>:nth-child(4){transition-delay:.16s}.stagger.visible>:nth-child(5){transition-delay:.2s}.stagger.visible>:nth-child(6){transition-delay:.24s}.stagger.visible>:nth-child(7){transition-delay:.27s}.stagger.visible>:nth-child(8){transition-delay:.3s}@media(prefers-reduced-motion:reduce){.reveal,.stagger>*{opacity:1!important;transition:none!important;transform:none!important}.hero:before,.hero:after,.hero-badge,.hero-badge .dot{animation:none!important}.hero-terminal .cursor{opacity:1!important;animation:none!important}}.nav-link:focus-visible,.theme-toggle:focus-visible,.lang-switch__trigger:focus-visible,.nav-cta:focus-visible,.nav-logo:focus-visible,.nav-burger:focus-visible,.hybrid-card:focus-visible,.product-card:focus-visible,.btn-primary:focus-visible,.btn-secondary:focus-visible{outline:2px solid var(--brand-red);outline-offset:2px}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{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}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@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}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.modal-overlay[data-astro-cid-udhb7edr]{position:fixed;inset:0;margin:auto;border:none;padding:0;background:transparent;color:var(--text-primary);width:min(480px,90vw);height:fit-content;max-height:90vh}.modal-overlay[data-astro-cid-udhb7edr]::backdrop{background:var(--modal-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.modal-card[data-astro-cid-udhb7edr]{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--r-lg);padding:40px;position:relative;width:100%;max-height:90vh;overflow:auto;box-shadow:0 8px 24px #00000029}.modal-close[data-astro-cid-udhb7edr]{position:absolute;top:16px;right:16px;font-size:1.5rem;color:var(--text-tertiary);transition:color var(--t-fast);width:32px;height:32px;display:flex;align-items:center;justify-content:center}.modal-close[data-astro-cid-udhb7edr]:hover{color:var(--text-primary)}.modal-content[data-astro-cid-udhb7edr] h2[data-astro-cid-udhb7edr]{font-size:1.5rem;font-weight:700;margin-bottom:8px}.modal-content[data-astro-cid-udhb7edr] p[data-astro-cid-udhb7edr]{color:var(--text-secondary);margin-bottom:24px;font-size:.95rem;line-height:1.6}.modal-social[data-astro-cid-udhb7edr]{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.social-link[data-astro-cid-udhb7edr]{display:flex;align-items:center;gap:8px;padding:10px 18px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-sm);font-size:.85rem;font-weight:500;transition:border-color var(--t-fast) ease,background var(--t-fast) ease}.social-link[data-astro-cid-udhb7edr]:hover{border-color:var(--border-hover);background:var(--bg-card-hover)}.modal-qr[data-astro-cid-udhb7edr]{margin-top:24px;padding:20px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);text-align:center}.modal-qr[data-astro-cid-udhb7edr] .qr-image[data-astro-cid-udhb7edr]{width:160px;height:160px;display:block;margin:0 auto 12px;border-radius:var(--r-sm);background:#fff;object-fit:contain}.modal-qr[data-astro-cid-udhb7edr] p[data-astro-cid-udhb7edr]{font-size:.8rem;color:var(--text-secondary);margin:0}.modal-contact[data-astro-cid-udhb7edr]{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.contact-link[data-astro-cid-udhb7edr]{display:inline-flex;align-items:center;gap:6px;min-width:0;font-size:.85rem;color:var(--text-secondary);padding:8px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-sm);transition:color var(--t-fast) ease,border-color var(--t-fast) ease}.contact-link[data-astro-cid-udhb7edr]:hover{color:var(--text-primary);border-color:var(--border-hover)}.contact-link[data-astro-cid-udhb7edr] svg[data-astro-cid-udhb7edr]{flex-shrink:0}.contact-link[data-astro-cid-udhb7edr] span[data-astro-cid-udhb7edr]{overflow-wrap:anywhere}.modal-close[data-astro-cid-udhb7edr]:focus-visible,.social-link[data-astro-cid-udhb7edr]:focus-visible,.contact-link[data-astro-cid-udhb7edr]:focus-visible{outline:2px solid var(--brand-red);outline-offset:2px}@media(max-width:560px){.modal-card[data-astro-cid-udhb7edr]{padding:32px 20px 24px}}.toast[data-astro-cid-5i5fqekp]{position:fixed;bottom:32px;left:50%;z-index:300;transform:translate(-50%) translateY(12px);opacity:0;padding:12px 24px;border-radius:var(--r-sm);background:var(--text-primary);color:var(--bg-primary);font-size:.85rem;font-weight:600;pointer-events:none;transition:transform .22s var(--ease),opacity .22s var(--ease)}.toast[data-astro-cid-5i5fqekp].show{transform:translate(-50%) translateY(0);opacity:1}@media(prefers-reduced-motion:reduce){.toast[data-astro-cid-5i5fqekp]{transition:none}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}
