﻿@font-face{font-family:"Inter";src:url("/fonts/InterVariable.ttf") format("truetype");font-weight:100 900;font-display:swap;font-style:normal}:root{color-scheme:light dark;--primary: #f46623;--primary-hover: #e0551a;--bg: light-dark(#ffffff, #1a1c1e);--bg-alt: light-dark(#f8f9fa, #121212);--text: light-dark(#1a1c1e, #f8f9fa);--text-muted: light-dark(#6c757d, #adb5bd);--border: light-dark(rgba(0, 0, 0, 0.08), rgba(255, 255, 255, 0.08));--card-bg: light-dark(#ffffff, #2c2e31);--nav-bg: light-dark(rgba(255, 255, 255, 0.92), rgba(26, 28, 30, 0.92));--code-bg: light-dark(#f5f5f5, #0d0d0d);--link-color: light-dark(#007bff, #4da3ff);--shadow-soft: 0 4px 20px rgba(0, 0, 0, 0.08);--radius: 12px;--transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1)}@supports (animation-timeline: scroll()){.native-progress-bar{position:fixed;top:0;left:0;height:3px;background:var(--primary);z-index:5000;transform-origin:0 50%;animation:scaleProgress auto linear forwards;animation-timeline:scroll(root block);width:100%}@keyframes scaleProgress{from{transform:scaleX(0)}to{transform:scaleX(1)}}}*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--primary) rgba(0,0,0,0);scroll-padding-top:5rem}body{background-color:var(--bg);color:var(--text);font-family:"Inter",system-ui,-apple-system,sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overscroll-behavior-y:none;min-height:100dvh;display:flex;flex-direction:column}::selection{background:rgba(244,102,35,.25);color:inherit}h1,h2,h3,h4,h5,h6{text-wrap:pretty;line-height:1.25;color:var(--text)}a{color:inherit}img{max-width:100%;height:auto;display:block}@media (prefers-reduced-motion: reduce){*,::before,::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100%;left:1rem;background:var(--primary);color:#fff;padding:.75rem 1.5rem;border-radius:0 0 var(--radius) var(--radius);z-index:9999;text-decoration:none;font-weight:600}.skip-link:focus{top:0}.container{max-width:1100px;margin-inline:auto;padding-inline:1.5rem}@media (max-width: 768px){.container{padding-inline:1rem}}.navbar{position:sticky;top:0;z-index:100;background:var(--nav-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);padding:.75rem 0}.navbar .nav-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem}.navbar .brand{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700;color:var(--primary);text-decoration:none;letter-spacing:-.5px;flex-shrink:0}.navbar .brand img{height:36px;width:36px}.navbar #mobile-menu-btn{display:none;padding:.5rem;color:var(--text);cursor:pointer;line-height:0}@media (max-width: 768px){.navbar #mobile-menu-btn{display:block;order:2}}.navbar #nav-toggle{display:none}.navbar #nav-toggle:checked~.nav-links{display:flex}.navbar .nav-links{display:flex;align-items:center;gap:2rem}@media (max-width: 768px){.navbar .nav-links{display:none;flex-basis:100%;flex-direction:column;gap:0;order:3;padding-block:.5rem}}.navbar .nav-links a{text-decoration:none;color:var(--text-muted);font-weight:500;font-size:.95rem;padding:.5rem .25rem;transition:color var(--transition);white-space:nowrap}@media (max-width: 768px){.navbar .nav-links a{padding:.75rem 0;width:100%;text-align:center;border-top:1px solid var(--border)}}.navbar .nav-links a:hover,.navbar .nav-links a.active,.navbar .nav-links a[aria-current=page]{color:var(--primary)}.navbar .search-container{position:relative;flex-shrink:0}@media (max-width: 768px){.navbar .search-container{order:4;width:100%}}.navbar .search-container #search-input{width:200px;padding:.45rem .85rem;border-radius:20px;border:1px solid var(--border);background:var(--card-bg);color:var(--text);font-size:.85rem;font-family:inherit;transition:width .3s ease,border-color var(--transition),box-shadow var(--transition)}.navbar .search-container #search-input:focus{outline:none;width:260px;border-color:var(--primary);box-shadow:0 0 0 3px rgba(244,102,35,.15)}.navbar .search-container #search-input::placeholder{color:var(--text-muted)}@media (max-width: 768px){.navbar .search-container #search-input{width:100%}.navbar .search-container #search-input:focus{width:100%}}.navbar .search-container .search-results-modal{display:none;position:absolute;top:calc(100% + .5rem);right:0;width:340px;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 12px 40px rgba(0,0,0,.12);max-height:400px;overflow-y:auto;z-index:1000;padding:.5rem}@media (max-width: 768px){.navbar .search-container .search-results-modal{width:100%;left:0;right:auto}}.navbar .search-container .search-results-modal .search-item{display:block;padding:.65rem .85rem;border-radius:8px;text-decoration:none;color:var(--text);transition:background var(--transition)}.navbar .search-container .search-results-modal .search-item:hover{background:var(--bg-alt)}.navbar .search-container .search-results-modal .search-item .search-title{display:block;font-weight:600;font-size:.9rem;margin-bottom:.15rem;color:var(--primary)}.navbar .search-container .search-results-modal .search-item .search-summary{display:block;font-size:.75rem;color:var(--text-muted);line-height:1.4}.navbar .search-container .search-results-modal .no-results{padding:1.25rem;text-align:center;color:var(--text-muted);font-size:.85rem}.hero{padding:7rem 0 5rem;text-align:center;background:linear-gradient(135deg, rgba(244,102,35,.05) 0%, rgba(0,0,0,0) 50%),linear-gradient(225deg, rgba(10,102,194,.05) 0%, rgba(0,0,0,0) 50%),var(--bg);background-size:200% 200%;animation:gradientShift 15s ease infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}@media (max-width: 768px){.hero{padding:5rem 0 3.5rem}}.hero h1{font-size:clamp(2.2rem,6vw,3.75rem);line-height:1.1;margin-bottom:1.5rem;font-weight:900;text-wrap:balance;letter-spacing:-1.5px}.hero p{font-size:clamp(1.05rem,2.5vw,1.2rem);color:var(--text-muted);max-width:640px;margin:0 auto 2.5rem;line-height:1.8}.error-page{padding-block:8rem}.error-page .error-code{font-size:clamp(4rem,15vw,8rem);font-weight:800;color:var(--primary);line-height:1;margin-bottom:1rem}.error-page .error-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.section-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-block:3rem 2rem}.section-header h1,.section-header h2{margin:0;font-size:1.5rem}.section-header .cta-outline{margin:0;padding:.5rem 1.25rem;font-size:.9rem}.section-page{padding-block-start:4rem}.section-description{color:var(--text-muted);margin-block-end:2rem;max-width:640px}.cta-button,.cta-outline{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.75rem;border-radius:8px;text-decoration:none;font-weight:600;font-size:.95rem;font-family:inherit;cursor:pointer;transition:all var(--transition);border:2px solid rgba(0,0,0,0)}.cta-button:focus-visible,.cta-outline:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.cta-button:active,.cta-outline:active{transform:scale(.97)}.cta-button{background:var(--primary);color:#fff}.cta-button:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px rgba(244,102,35,.25)}.cta-outline{background:rgba(0,0,0,0);border-color:var(--primary);color:var(--primary)}.cta-outline:hover{background:rgba(244,102,35,.08);transform:translateY(-1px)}.blog-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(min(100%,300px), 1fr));gap:1.75rem;margin-bottom:3rem}.blog-grid:has(.blog-card:hover) .blog-card:not(:hover){opacity:.65;filter:grayscale(15%)}.blog-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:1.75rem;text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,opacity .3s ease}.blog-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px rgba(0,0,0,.08);border-color:var(--primary)}.blog-card:hover .read-more{letter-spacing:.5px}.blog-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.blog-card .date{font-size:.8rem;color:var(--text-muted);margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.5px}.blog-card h3{font-size:1.25rem;margin-bottom:.75rem;line-height:1.3}.blog-card p{color:var(--text-muted);margin-bottom:1.5rem;flex-grow:1;font-size:.92rem;line-height:1.6}.blog-card .read-more{font-weight:600;color:var(--primary);display:inline-flex;font-size:.9rem;align-items:center;gap:.4rem;transition:letter-spacing var(--transition)}.blog-card .read-more::after{content:"→"}@supports (animation-timeline: view()){.blog-card{animation:cardReveal linear both;animation-timeline:view();animation-range:entry 0% cover 30%}@keyframes cardReveal{from{opacity:0;transform:translateY(40px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-block:3rem}.pagination .page-indicator{font-weight:700;font-size:.9rem;color:var(--text-muted)}.article-header{margin-bottom:3rem;text-align:center}.article-header .category-badge{display:inline-block;padding:.3rem 1rem;border-radius:20px;background:rgba(244,102,35,.1);color:var(--primary);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:1.25rem}.article-header h1{font-size:clamp(1.75rem,5vw,2.75rem);line-height:1.2;margin-bottom:1.25rem;letter-spacing:-.5px;text-wrap:balance}.article-meta{display:flex;justify-content:center;align-items:center;gap:.65rem;color:var(--text-muted);font-size:.9rem;flex-wrap:wrap}.article-tags{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin-top:1.25rem}.article-tags .tag{display:inline-block;padding:.2rem .75rem;border-radius:20px;border:1px solid var(--border);font-size:.75rem;text-decoration:none;color:var(--text-muted);transition:all var(--transition)}.article-tags .tag:hover{border-color:var(--primary);color:var(--primary);background:rgba(244,102,35,.05)}.back-nav{margin-block:4rem 0;padding-block-start:2rem;border-top:1px solid var(--border);text-align:center}.alert{display:flex;gap:1rem;padding:1.25rem 1.5rem;border-radius:var(--radius);margin-block:2rem;border:1px solid var(--border);background:var(--bg-alt);font-size:.95rem}.alert .alert-icon{flex-shrink:0;font-weight:700;font-size:1.1rem;line-height:1.6}.alert .alert-content{flex:1}.alert .alert-content p{margin:0}.alert.alert-info{border-left:4px solid #3b82f6}.alert.alert-info .alert-icon{color:#3b82f6}.alert.alert-tip{border-left:4px solid #22c55e}.alert.alert-tip .alert-icon{color:#22c55e}.alert.alert-warning{border-left:4px solid #eab308}.alert.alert-warning .alert-icon{color:#eab308}.alert.alert-alert{border-left:4px solid #ef4444}.alert.alert-alert .alert-icon{color:#ef4444}.native-accordion{background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius);margin-block-end:.75rem;overflow:hidden}.native-accordion summary{padding:1rem 1.5rem;font-weight:600;cursor:pointer;color:var(--text);list-style:none;display:flex;align-items:center;justify-content:space-between}.native-accordion summary::after{content:"+";font-size:1.25rem;color:var(--text-muted);transition:transform var(--transition)}.native-accordion summary::-webkit-details-marker{display:none}.native-accordion[open] summary::after{transform:rotate(45deg)}.native-accordion .accordion-content{padding:0 1.5rem 1.25rem;color:var(--text-muted);line-height:1.7}.pure-css-tabs{display:flex;flex-wrap:wrap;margin-block:2rem;border-bottom:1px solid var(--border)}.pure-css-tabs .tab-radio{display:none}.pure-css-tabs .tab-label{padding:.75rem 1.25rem;cursor:pointer;font-weight:600;color:var(--text-muted);order:1;border-bottom:2px solid rgba(0,0,0,0);transition:color var(--transition),border-color var(--transition);font-size:.95rem}.pure-css-tabs .tab-label:hover{color:var(--text)}.pure-css-tabs .tab-content-panel{display:none;width:100%;order:2;padding:1.25rem 0}.pure-css-tabs .tab-radio:checked+.tab-label{color:var(--primary);border-bottom-color:var(--primary)}.pure-css-tabs .tab-radio:checked+.tab-label+.tab-content-panel{display:block}.blog-content{max-width:780px;margin-inline:auto;font-size:clamp(1rem,1.6vw + .5rem,1.1rem);padding-block:2rem;counter-reset:section}.blog-content>p:first-of-type{font-size:1.15em;color:var(--text-muted);line-height:1.8}.blog-content a:not(.cta-button):not(.cta-outline):not(.blog-card):not(.tag){color:var(--primary);text-decoration:underline;text-decoration-color:rgba(244,102,35,.3);text-underline-offset:3px;transition:text-decoration-color var(--transition)}.blog-content a:not(.cta-button):not(.cta-outline):not(.blog-card):not(.tag):hover{text-decoration-color:var(--primary)}.blog-content blockquote{margin-block:2rem;padding:1.25rem 1.5rem;background:var(--bg-alt);border-left:3px solid var(--primary);border-radius:0 var(--radius) var(--radius) 0;font-style:italic;color:var(--text-muted)}.blog-content blockquote p{margin:0}.blog-content code:not(pre code){background:rgba(244,102,35,.08);color:var(--primary);padding:.15rem .4rem;border-radius:4px;font-family:"Fira Code","JetBrains Mono",ui-monospace,monospace;font-size:.88em}.blog-content ul,.blog-content ol{margin-block-end:1.5rem;padding-inline-start:1.5rem}.blog-content ul li,.blog-content ol li{margin-block-end:.4rem}.blog-content ul li::marker,.blog-content ol li::marker{color:var(--primary)}.blog-content table{width:100%;display:block;overflow-x:auto;border-collapse:collapse;margin-block:2rem;font-size:.95rem}.blog-content table th,.blog-content table td{padding:.75rem 1rem;border:1px solid var(--border);text-align:start}.blog-content table th{background:var(--bg-alt);font-weight:600;white-space:nowrap}.blog-content table tr:hover td{background:rgba(0,0,0,.02)}.blog-content img{border-radius:var(--radius);margin-block:2rem}.blog-content figcaption{text-align:center;font-size:.85rem;color:var(--text-muted);font-style:italic;margin-top:-1rem;margin-bottom:2rem}.blog-content *:target{scroll-margin-top:5rem}.blog-content pre{background:var(--code-bg) !important;padding:1.25rem 1.5rem;border-radius:var(--radius);margin-block:2rem;overflow-x:auto;border:1px solid var(--border);font-family:"Fira Code","JetBrains Mono",ui-monospace,monospace;font-size:.9em;line-height:1.6}.blog-content h2{margin-block:3.5rem 1.5rem;font-size:clamp(1.5rem,3.5vw,2rem);padding-bottom:.5rem;border-bottom:2px solid var(--border);counter-increment:section;display:flex;align-items:center;gap:.75rem}.blog-content h2::before{content:counter(section) ".";color:var(--primary);font-size:.85em;font-weight:900;opacity:.8}.blog-content h3{margin-block:2rem .75rem;font-size:1.25rem}.blog-content p{margin-block-end:1.5rem}.blog-content hr{border:none;border-top:1px solid var(--border);margin-block:3rem}.mermaid{margin-block:2rem;text-align:center}.mermaid svg{max-width:100%;height:auto}.share-buttons{display:flex;flex-wrap:wrap;gap:1rem;margin-block:2.5rem;padding:1rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius);align-items:center;font-size:.9rem}.share-buttons a{text-decoration:none;font-weight:500;transition:opacity var(--transition)}.share-buttons a:hover{opacity:.7}footer{margin-top:auto;padding-block:3.5rem 2rem;border-top:1px solid var(--border);background:var(--bg-alt);color:var(--text-muted);font-size:.9rem}footer .footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem;margin-bottom:2.5rem;text-align:left}@media (max-width: 768px){footer .footer-grid{grid-template-columns:1fr;text-align:center}}footer .footer-col h4{font-size:1rem;font-weight:700;color:var(--text);margin-bottom:.75rem}footer .footer-col p{line-height:1.6;max-width:320px}@media (max-width: 768px){footer .footer-col p{max-width:100%}}footer .footer-col ul{list-style:none;padding:0}footer .footer-col ul li{margin-bottom:.4rem}footer .footer-col a{color:var(--text-muted);text-decoration:none;transition:color var(--transition)}footer .footer-col a:hover{color:var(--primary)}footer .copyright{font-size:.8rem;text-align:center;padding-top:1.5rem;border-top:1px solid var(--border)}footer .copyright a{color:var(--primary);text-decoration:none}footer .copyright a:hover{text-decoration:underline}@keyframes fadeIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-fade{animation:fadeIn .4s ease both}@media (prefers-color-scheme: dark){img:not(.brand img){filter:brightness(.8) contrast(1.1);transition:filter var(--transition)}img:not(.brand img):hover{filter:brightness(1) contrast(1)}}@media print{.navbar,footer,.hero,.share-buttons,.native-progress-bar,.read-more,.search-container{display:none !important}body{background-color:#fff !important;color:#000 !important}.container{max-width:100%;padding:0;margin:0}a{color:#000 !important;text-decoration:underline !important}.blog-content a::after{content:" (" attr(href) ")";font-size:.8em;word-break:break-all}}[data-tooltip]{position:relative;cursor:help;text-decoration:underline dotted var(--primary);text-underline-offset:4px}[data-tooltip]::before,[data-tooltip]::after{position:absolute;opacity:0;visibility:hidden;transition:opacity .2s ease,transform .2s ease;z-index:1000;pointer-events:none}[data-tooltip]::before{content:"";bottom:100%;left:50%;margin-bottom:5px;transform:translateX(-50%) translateY(10px);border-width:6px;border-style:solid;border-color:rgba(0,0,0,0) rgba(0,0,0,0) var(--bg-alt) rgba(0,0,0,0)}[data-tooltip]::after{content:attr(data-tooltip);bottom:100%;left:50%;transform:translateX(-50%) translateY(10px);margin-bottom:10px;background-color:var(--card-bg);color:var(--text);padding:.5rem .75rem;border-radius:6px;border:1px solid var(--border);font-size:.85rem;white-space:nowrap;box-shadow:0 4px 15px rgba(0,0,0,.1)}[data-tooltip]:hover::before,[data-tooltip]:hover::after{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}