:root{--color-primary-50: #E6F0FE;--color-primary-100: #CDE1FE;--color-primary-200: #9BC2FD;--color-primary-300: #69A4FC;--color-primary-400: #3785FB;--color-primary-500: #0566F7;--color-primary-600: #0452C8;--color-primary-700: #0342A0;--color-primary-800: #023178;--color-primary-900: #022150;--color-primary-950: #011532;--color-secondary-50: #C0F0FC;--color-secondary-100: #8FE4FA;--color-secondary-200: #5ED9F7;--color-secondary-300: #2ECDF5;--color-secondary-400: #0BB9E5;--color-secondary-500: #0891B2;--color-secondary-600: #07728D;--color-secondary-700: #055366;--color-secondary-800: #033744;--color-secondary-900: #022027;--color-secondary-950: #011418;--color-accent-50: #FEEADC;--color-accent-100: #FDD6B9;--color-accent-200: #FCB583;--color-accent-300: #FB9851;--color-accent-400: #FA8938;--color-accent-500: #F97316;--color-accent-600: #D15A05;--color-accent-700: #9F4504;--color-accent-800: #6D2F03;--color-accent-900: #461E02;--color-accent-950: #2D1301;--white: #ffffff;--color-neutral-50: #F9FAFB;--color-neutral-100: #F3F4F6;--color-neutral-200: #E5E7EB;--color-neutral-300: #D1D5DB;--color-neutral-400: #9CA3AF;--color-neutral-500: #6B7280;--color-neutral-600: #4B5563;--color-neutral-700: #374151;--color-neutral-800: #1F2937;--color-neutral-900: #111827;--color-neutral-950: #030712;--color-success: #15803D;--color-success-bg: #F0FDF4;--color-warning: #92400E;--color-warning-bg: #FFFBEB;--color-error: #DC2626;--color-error-bg: #FEF2F2;--color-info: #0891B2;--color-info-bg: #ECFEFF;--gradient-start: var(--color-primary-500);--gradient-mid: var(--color-secondary-500);--gradient-end: var(--color-primary-700);--color-accent: var(--color-primary-500);--color-accent-hover: var(--color-primary-600);--color-accent-subtle: var(--color-primary-50);--color-text: var(--color-neutral-900);--color-text-secondary: var(--color-neutral-500);--color-text-tertiary: var(--color-neutral-400);--color-bg: var(--white);--color-bg-subtle: var(--color-neutral-50);--color-border: var(--color-neutral-200);--font-display: "IBM Plex Sans", system-ui, -apple-system, sans-serif;--font-body: "IBM Plex Sans", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "SF Mono", monospace;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--space-4xl: 6rem;--space-5xl: 8rem;--max-width: 1200px;--max-width-narrow: 720px;--radius-card: 6px;--radius-button: 4px;--radius-chip: 2px;--shadow-sm: 0 1px 3px rgba(3, 7, 18, .06), 0 1px 2px rgba(3, 7, 18, .04);--shadow-md: 0 4px 12px rgba(3, 7, 18, .08), 0 2px 4px rgba(3, 7, 18, .04);--shadow-lg: 0 12px 40px rgba(3, 7, 18, .1), 0 4px 12px rgba(3, 7, 18, .05);--shadow-xl: 0 24px 60px rgba(3, 7, 18, .12), 0 8px 20px rgba(3, 7, 18, .06);--duration-fast: .15s;--duration-base: .2s;--easing-out: ease-out;--easing-in: ease-in;--easing-inout: ease-in-out;--transition-fast: var(--duration-fast) var(--easing-out);--transition-base: var(--duration-base) var(--easing-out)}*,*:before,*:after{box-sizing:border-box}body{font-family:var(--font-body);margin:0;padding:0;color:var(--color-text);background:var(--color-bg);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-variant-numeric:tabular-nums}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--color-text);line-height:1.15;margin:0 0 .5em;letter-spacing:-.02em}h1{font-size:clamp(2.25rem,5vw,3.375rem);font-weight:300}h2{font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:400}h3{font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:400}h4{font-size:1.25rem;font-weight:400}h5{font-size:1.1rem;font-weight:400}p{margin:0 0 1em}.prose p{margin-bottom:1.25em;line-height:1.75}.prose h2,.prose h3,.prose h4{margin-top:2em}strong,b{font-weight:600}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}code{font-family:var(--font-mono);padding:2px 6px;background-color:var(--color-neutral-100);border-radius:var(--radius-chip);font-size:.9em}pre{padding:1.5em;border-radius:var(--radius-card);overflow-x:auto}pre>code{all:unset;font-family:var(--font-mono)}img{max-width:100%;height:auto;border-radius:var(--radius-card)}.prose ul,.prose ol{margin-bottom:1.25em;padding-left:1.5em;line-height:1.75}.prose ul{list-style:none}.prose ul li{position:relative;padding-left:.25em}.prose ul li:before{content:"";position:absolute;left:-1.125em;top:.65em;width:6px;height:6px;border-radius:50%;background:var(--color-primary-500)}.prose li+li{margin-top:.5em}hr{border:none;border-top:1px solid var(--color-border);margin:2em 0}table{width:100%;border-collapse:collapse;margin-bottom:var(--space-lg);font-size:.9em}th{padding:.75em 1em;text-align:left;border-bottom:2px solid var(--color-neutral-300);font-weight:600;color:var(--color-text);letter-spacing:.01em}td{padding:.75em 1em;text-align:left;border-bottom:1px solid var(--color-border);color:var(--color-text-secondary)}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--color-bg-subtle)}input,textarea{font-size:16px;font-family:var(--font-body)}textarea{width:100%}.sr-only{border:0;padding:0;margin:0;position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px);clip-path:inset(50%);white-space:nowrap}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-lg)}.container--narrow{max-width:var(--max-width-narrow)}.btn{display:inline-flex;align-items:center;gap:.5em;font-family:var(--font-body);font-weight:600;font-size:.95rem;padding:.75em 1.75em;border-radius:var(--radius-button);border:none;cursor:pointer;text-decoration:none;transition:all var(--transition-base);letter-spacing:-.01em}.btn--primary{position:relative;overflow:hidden;background:var(--color-primary-500);color:var(--white);box-shadow:0 2px 8px #0566f74d}.btn--primary:after{content:"";position:absolute;top:0;bottom:0;width:2px;background:linear-gradient(180deg,transparent 0%,rgba(255,255,255,.5) 30%,rgba(255,255,255,.7) 50%,rgba(255,255,255,.5) 70%,transparent 100%);opacity:0;pointer-events:none;left:-10%}.btn--primary:hover:after{animation:btn-scan .4s linear 1 forwards}@keyframes btn-scan{0%{left:-10%;opacity:0}10%{opacity:.6}80%{opacity:.6}to{left:110%;opacity:0}}@media(prefers-reduced-motion:reduce){.btn--primary:after{animation:none}}.btn--primary:hover{background:var(--color-primary-600);box-shadow:0 4px 16px #0566f766;transform:translateY(-1px);color:var(--white)}.btn--secondary{background:transparent;color:var(--color-text);border:1.5px solid var(--color-border)}.btn--secondary:hover{border-color:var(--color-accent);color:var(--color-accent)}.btn--secondary.btn--light{color:var(--color-neutral-300);border-color:var(--color-neutral-600)}.btn--secondary.btn--light:hover{color:var(--white);border-color:var(--color-neutral-400)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-in{animation:fadeInUp .5s var(--easing-out) both}.animate-in-delay-1{animation-delay:.1s}.animate-in-delay-2{animation-delay:.2s}.animate-in-delay-3{animation-delay:.3s}.animate-in-delay-4{animation-delay:.4s}.animate-in-delay-5{animation-delay:.5s}.card-detect{position:relative}.card-detect:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;opacity:0;transition:opacity var(--transition-base);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none'%3E%3Cpath d='M1 12V1h11' stroke='%230566F7' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none'%3E%3Cpath d='M15 4v11H4' stroke='%230566F7' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-position:10px 10px,calc(100% - 10px) calc(100% - 10px);background-repeat:no-repeat;background-size:16px 16px}.card-detect:hover:after{opacity:.3}@media(prefers-reduced-motion:reduce){.card-detect:after{transition:none}}@media(max-width:768px){body{font-size:15px}.container{padding:0 var(--space-md)}}
