/*!* Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2024 Fonticons, Inc.*/.fa{font-family:var(--fa-style-family,"Font Awesome 6 Free");font-weight:var(--fa-style,900)}.fa,.fa-solid,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:var(--fa-display,inline-block);font-style:normal;font-variant:normal;line-height:1;text-rendering:auto}.fa-solid,.fas{font-family:"font awesome 6 free"}.fa-folder-blank:before,.fa-folder:before{content:"\f07b"}.fa-tags:before{content:"\f02c"}.fa-clock-four:before,.fa-clock:before{content:"\f017"}.fa-bars-staggered:before,.fa-reorder:before,.fa-stream:before{content:"\f550"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-calendar:before{content:"\f133"}.fa-table-list:before,.fa-th-list:before{content:"\f00b"}:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"font awesome 6 free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900-subset.woff2)format("woff2")}.fa-solid,.fas{font-weight:900}.navbar-custom{background-color:#fff!important;border:none;border-bottom:1px solid #f0f0f0;box-shadow:0 1px 3px rgba(0,0,0,5%);padding:.5rem 0;min-height:60px}body{padding-top:70px!important}.intro-header{margin-top:0!important;padding-top:2rem!important}.navbar-brand{font-size:1.7rem!important;font-weight:400!important;color:#333!important;letter-spacing:-.5px;padding:15px 20px!important}.navbar-brand:hover,.navbar-brand:focus{color:#333!important;text-decoration:none}.navbar-nav>li>a{color:#666!important;font-size:1.2rem;font-weight:400;padding:15px 20px!important;text-transform:none;letter-spacing:0;transition:color .2s ease}.navbar-nav>li>a:hover,.navbar-nav>li>a:focus{color:#333!important;background-color:transparent!important}.navbar-nav>li.active>a,.navbar-nav>li.active>a:hover,.navbar-nav>li.active>a:focus{color:#333!important;background-color:transparent!important;font-weight:500}.navbar-toggle{border:none!important;background-color:transparent!important;padding:9px 10px!important}.navbar-toggle:hover,.navbar-toggle:focus{background-color:#f8f9fa!important}.navbar-toggle .icon-bar{background-color:#666!important;height:2px;border-radius:1px}.navlinks-container .navlinks-parent{color:#666!important;font-size:1.2rem;font-weight:400;padding:15px 20px!important;cursor:pointer}.navlinks-children{background-color:#fff;border:1px solid #e9ecef;border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.navlinks-children a{color:#666!important;padding:10px 15px;display:block;text-decoration:none;font-size:1.1rem}.navlinks-children a:hover{background-color:#f8f9fa;color:#333!important}@media(max-width:767px){.navbar-nav{margin:0}.navbar-nav>li>a{padding:12px 20px!important;border-bottom:1px solid #f0f0f0}.navbar-nav>li:last-child>a{border-bottom:none}body{padding-top:60px!important}.navbar-custom{min-height:50px}}html,body{background-color:#fff!important;background:#fff!important}.container,.container-fluid{background-color:#fff!important;background:#fff!important}.main-content,.content,#main,main,.intro-header,.page-heading{background-color:#fff!important;background:#fff!important}.navbar-default{background-color:#fff!important;background:#fff!important;border-bottom:1px solid #e7e7e7}footer,.footer{background-color:#fff!important;background:#fff!important}*{background-color:inherit}[style*="background: #F5F5F5"],[style*="background-color: #F5F5F5"]{background-color:#fff!important;background:#fff!important}.section-title{color:#404040;font-size:2rem;font-weight:600;margin:2rem 0 1.5rem;padding-bottom:.5rem;border-bottom:2px solid #eee}.featured-posts{margin-bottom:3rem}.post-featured{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px rgba(0,0,0,8%);transition:box-shadow .3s ease,transform .2s ease}.post-featured:hover{box-shadow:0 4px 16px rgba(0,0,0,.12);transform:translateY(-2px)}.post-featured .post-title{font-size:2.2rem;font-weight:700;color:#2c3e50;margin-bottom:.5rem;line-height:1.3}.post-featured .post-subtitle{font-size:1.6rem;color:#6c757d;font-weight:400;margin-bottom:1rem;line-height:1.4}.post-featured .featured-image{border-radius:8px;margin:1rem 0;max-height:300px;object-fit:cover;width:100%}.post-featured .post-entry{font-size:1.4rem;line-height:1.6;color:#495057}.post-featured .post-entry-limited{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;line-height:1.6;max-height:calc(1.6em * 3)}.post-preview.post-featured .post-read-more{color:#6c757d!important;font-weight:400!important;text-decoration:none;font-size:1.5rem;opacity:.7;transition:opacity .2s ease;float:none!important}.post-preview.post-featured .post-read-more:hover{opacity:1;text-decoration:none}.post-featured .post-date{font-size:1.3rem;color:#adb5bd;margin-top:1rem;text-align:left;font-style:italic}.post-featured .blog-tags{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e9ecef}.post-featured .blog-tags a{background:#f8f9fa;color:#6c757d;padding:.25rem .75rem;border-radius:20px;text-decoration:none;font-size:1.05rem;margin-right:.5rem;margin-bottom:.5rem;display:inline-block;transition:all .2s ease}.post-featured .blog-tags a:hover{background:#1f2937;color:#fff}.post-featured .blog-tags:before{content:""!important}.recent-posts{margin-top:2rem}.posts-list-simple{list-style:none!important;padding-left:0;margin:0;background:0 0}.posts-list-simple li{position:relative!important;padding-left:1.2rem!important;margin-bottom:.75rem;line-height:1.6}.posts-list-simple li::before{content:"•"!important;color:#666!important;position:absolute!important;left:0!important;top:50%!important;transform:translateY(-50%)!important;font-size:1.2rem!important;line-height:1!important}.post-simple:last-child{margin-bottom:0}.post-simple-title{font-size:1.5rem;font-weight:400;color:#666;text-decoration:none;line-height:1.6}.post-simple-title:hover{color:#333;text-decoration:none}.post-simple-meta{font-size:1.25rem;color:#6c757d;line-height:1.3}.post-simple-meta .separator{margin:0 .5rem}.post-simple-meta .category{color:#7c8a96;font-style:italic}.article-header{background:#fff;padding:3rem 0;margin-bottom:3rem;text-align:center}.article-title{font-family:inter,-apple-system,BlinkMacSystemFont,segoe ui,roboto,oxygen,ubuntu,cantarell,fira sans,droid sans,helvetica neue,sans-serif;font-size:4rem;font-weight:400;color:#000;margin-bottom:1.5rem;line-height:1.1;max-width:100%;word-wrap:break-word;letter-spacing:-.02em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.article-subtitle{font-size:1.6rem;color:#6c757d;font-weight:400;margin-bottom:0;line-height:1.4;max-width:100%}.article-header-meta{display:flex;justify-content:center;align-items:center;gap:1rem;margin-bottom:2rem;font-size:1.1rem;color:#6c757d}.article-header-date{color:#6c757d;font-weight:400;font-family:inter,sans-serif}.article-header-category{background:#f3f4f6;color:#6b7280;padding:.25rem .75rem;border-radius:.375rem;font-size:.875rem;font-weight:400;text-transform:capitalize;font-family:inter,sans-serif}.article-meta{display:flex;justify-content:center;flex-wrap:wrap;gap:1.5rem;font-size:1.15rem;color:#6c757d}.article-meta>span{display:flex;align-items:center;gap:.5rem}.article-meta i{color:#1f2937}.article-content{background:#fff;padding:0;margin-bottom:3rem;line-height:1.8;font-size:1.6rem;color:#2c3e50}.article-content h1,.article-content h2,.article-content h3,.article-content h4,.article-content h5,.article-content h6{color:#2c3e50;font-weight:600;margin-top:3rem;margin-bottom:1rem;line-height:1.3}.article-content h1{margin-top:3.5rem}.article-content h2{font-size:2.3125rem;font-weight:400;margin-top:6.5rem;padding-top:40px;padding-bottom:30px}.article-content h3{font-size:1.7rem;color:#34495e;margin-top:3rem}.article-content h4,.article-content h5,.article-content h6{margin-top:2rem;margin-bottom:1rem;line-height:1.3}.article-content p{margin-bottom:1.5rem;text-align:justify}.article-content blockquote{background:#f8f9fa;border-left:4px solid #3498db;padding:1.5rem;margin:2rem 0;border-radius:0 8px 8px 0;font-style:italic;box-shadow:0 2px 8px rgba(0,0,0,5%)}.article-content code{background:#f1f5f9;padding:.05rem .2rem;border-radius:2px;font-size:.85em;color:#475569;border:1px solid #e2e8f0}.article-content pre{background:#f8f9fa;padding:1.5rem;border-radius:8px;overflow-x:auto;border:1px solid #e9ecef;box-shadow:0 2px 8px rgba(0,0,0,5%)}.article-content img{max-width:100%;height:auto;border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,.1);margin:2rem 0}.article-content ul,.article-content ol{margin-bottom:1.5rem;padding-left:2rem}.article-content li{margin-bottom:.5rem}.article-footer{background:linear-gradient(135deg,#f8f9fa 0%,#ffffff 100%);padding:2rem;border-radius:12px;margin-bottom:3rem;box-shadow:0 2px 12px rgba(0,0,0,4%)}.article-footer .article-meta{margin-bottom:2rem;padding-bottom:1.5rem;justify-content:flex-start}.article-tags h4,.social-share h4{color:#2c3e50;font-size:1.4rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.article-tags h4 i,.social-share h4 i{color:#1f2937}.tags-list{display:flex;flex-wrap:wrap;gap:.5rem}.tag-link{background:linear-gradient(135deg,#1f2937,#111827);color:#fff;padding:.5rem 1rem;border-radius:20px;text-decoration:none;font-size:1.1rem;font-weight:500;transition:all .3s ease;box-shadow:0 2px 8px rgba(31,41,55,.3)}.tag-link:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(31,41,55,.4);color:#fff;text-decoration:none}.related-posts{background:#fff;padding:2rem;border-radius:12px;margin-bottom:3rem;box-shadow:0 2px 12px rgba(0,0,0,4%)}.related-posts h4{color:#2c3e50;font-size:1.5rem;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.related-posts h4 i{color:#f39c12}.related-posts-list{display:flex;flex-direction:column;gap:1rem}.related-post-link{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f8f9fa;border-radius:8px;text-decoration:none;transition:all .3s ease}.related-post-link:hover{background:#e9ecef;transform:translateX(8px);box-shadow:0 2px 8px rgba(0,0,0,.1);text-decoration:none}.related-post-title{color:#2c3e50;font-weight:500;flex:1}.related-post-date{color:#6c757d;font-size:1.1rem}.article-navigation{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:3rem}.nav-previous,.nav-next{background:#fff;border-radius:12px;box-shadow:0 2px 12px rgba(0,0,0,4%);overflow:hidden;transition:all .3s ease}.nav-previous:hover,.nav-next:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.1)}.nav-link{display:block;padding:1.5rem;text-decoration:none;color:inherit}.nav-link:hover{text-decoration:none;color:inherit}.nav-direction{display:block;font-size:1.1rem;color:#6c757d;margin-bottom:.5rem;font-weight:500}.nav-title{display:block;color:#2c3e50;font-weight:600;line-height:1.3}.nav-next{text-align:right}.comments-section{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 2px 12px rgba(0,0,0,4%);margin-bottom:3rem}.page-description{background:linear-gradient(135deg,#f8f9fa 0%,#ffffff 100%);padding:2rem;border-radius:12px;margin-bottom:3rem;border:1px solid #e9ecef;box-shadow:0 2px 12px rgba(0,0,0,4%);text-align:center;color:#2c3e50;line-height:1.6}.pagination-nav{margin:3rem 0;text-align:center}.pagination-nav .pager{display:flex;justify-content:space-between;align-items:center;list-style:none;padding:0;margin:0;gap:1rem}.pagination-nav .pager li{flex:1}.pagination-link{display:block;background:linear-gradient(135deg,#1f2937,#111827);color:#fff;padding:1rem 2rem;border-radius:8px;text-decoration:none;font-weight:500;transition:all .3s ease;box-shadow:0 2px 8px rgba(31,41,55,.3);text-align:center}.pagination-link:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(31,41,55,.4);color:#fff;text-decoration:none;background:linear-gradient(135deg,#111827,#1f2937)}.pagination-link i{margin:0 .5rem}.pagination-nav .pager li.previous{text-align:left}.pagination-nav .pager li.next{text-align:right}.pagination-nav .pager li:only-child{text-align:center}.tags-page{padding:2rem 0}.page-title{font-size:2.7rem;font-weight:700;color:#2c3e50;text-align:center;margin-bottom:1rem}.tags-page .page-description{font-size:1.4rem;color:#6c757d;text-align:center;margin-bottom:3rem}.tags-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;margin-bottom:3rem}.tag-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;overflow:hidden;transition:all .3s ease;box-shadow:0 2px 8px rgba(0,0,0,5%)}.tag-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px rgba(0,0,0,.1);border-color:#3498db}.tag-card-link{display:block;padding:2rem 1.5rem;text-decoration:none;color:inherit}.tag-card-link:hover{text-decoration:none;color:inherit}.tag-name{font-size:1.6rem;font-weight:600;color:#2c3e50;margin-bottom:.5rem;line-height:1.3}.tag-count{font-size:1.2rem;color:#6c757d;font-weight:400}.tag-card:hover .tag-name{color:#3498db}.tag-card:hover .tag-count{color:#2980b9}@media(max-width:768px){.section-title{font-size:1.7rem;margin:1.5rem 0 1rem}.post-featured{padding:1.5rem;margin-bottom:1.5rem}.post-featured .post-title{font-size:1.7rem}.post-featured .post-subtitle{font-size:1.3rem}.posts-list-simple{padding-left:1.5rem}.featured-posts{margin-bottom:2rem}.article-header{padding:2rem 0;margin-bottom:2rem}.article-title{font-size:2.5rem;padding:0 1rem;line-height:1.2}.article-subtitle{font-size:1.4rem;padding:0 1rem}.article-header-meta{flex-direction:column;gap:.5rem;margin-bottom:1.5rem;font-size:1rem;padding:0 1rem}.article-meta{flex-direction:column;gap:.5rem}.article-footer .article-meta{justify-content:flex-start;align-items:flex-start}.article-content{padding:0;font-size:1.5rem}.article-navigation{grid-template-columns:1fr}.nav-next{text-align:left}.tags-list{justify-content:center}.related-post-link{flex-direction:column;align-items:flex-start;gap:.5rem}.pagination-nav .pager{flex-direction:column;gap:1rem}.pagination-nav .pager li{flex:none}.pagination-nav .pager li.previous,.pagination-nav .pager li.next,.pagination-nav .pager li:only-child{text-align:center}.page-description{padding:1.5rem}.tags-page .page-title{font-size:2.2rem}.tags-page .page-description{font-size:1.3rem;margin-bottom:2rem;padding:0}.tags-grid{grid-template-columns:1fr;gap:1rem}.tag-card-link{padding:1.5rem 1rem}.tag-name{font-size:1.4rem}}.article-content code:not(.hljs){background:#f1f5f9;color:#475569;padding:.1rem .25rem;border-radius:2px;font-size:.9em;font-family:monaco,menlo,ubuntu mono,monospace;border:1px solid #e2e8f0;font-weight:500}.article-content pre{background:#f3f3f3!important;color:#2c3e50!important;padding:1.2rem 1.5rem;border-radius:8px;overflow-x:auto;border:1px solid #e0e0e0;box-shadow:0 2px 8px rgba(0,0,0,4%);margin:1.5rem 0;position:relative;font-family:monaco,menlo,ubuntu mono,monospace;font-size:1.2rem;line-height:1.5}.article-content pre code{background:0 0!important;color:#2c3e50!important;padding:0!important;border:none!important;border-radius:0!important;box-shadow:none!important;font-size:inherit!important;font-weight:400!important}.highlight,.chroma{background:0 0!important;border-radius:0!important;box-shadow:none!important;margin:1.5rem 0!important;position:relative;border:none!important;padding:0!important}.highlight pre,.chroma pre{background:0 0!important;margin:0!important;padding:1.2rem 1.5rem!important;border:none!important;border-radius:8px!important;color:#2c3e50!important}.language-bash .highlight::before,.language-shell .highlight::before,.language-javascript .highlight::before,.language-js .highlight::before,.language-python .highlight::before,.language-css .highlight::before,.language-html .highlight::before{position:absolute;top:0;left:0;color:#fff;padding:.4rem .8rem;border-radius:12px 0 8px 0;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;z-index:15}.language-bash .highlight::before,.language-shell .highlight::before{content:"BASH"!important;background:rgba(46,204,113,.9)!important}.language-javascript .highlight::before,.language-js .highlight::before{content:"JS"!important;background:rgba(241,196,15,.9)!important}.language-python .highlight::before{content:"PYTHON"!important;background:rgba(52,152,219,.9)!important}.language-css .highlight::before{content:"CSS"!important;background:rgba(155,89,182,.9)!important}.language-html .highlight::before{content:"HTML"!important;background:rgba(231,76,60,.9)!important}.copyCodeButton{background:rgba(52,152,219,.9)!important;color:#fff!important;border:none!important;border-radius:6px!important;padding:.4rem .8rem!important;font-size:.75rem!important;font-weight:600!important;cursor:pointer!important;transition:all .3s ease!important;position:absolute!important;top:.5rem!important;right:.5rem!important;z-index:20!important;opacity:0!important;visibility:hidden!important;transform:translateY(-3px)scale(.8)!important;pointer-events:none!important}.highlight:hover .copyCodeButton,.chroma:hover .copyCodeButton{opacity:1!important;visibility:visible!important;transform:translateY(0)scale(1)!important;pointer-events:auto!important}.copyCodeButton:hover{background:#2980b9!important;transform:translateY(0)scale(1.05)!important}.chroma .c,.chroma .c1,.chroma .cm{color:#6c757d!important;font-style:italic!important}.chroma .k,.chroma .kd,.chroma .kn,.chroma .kp,.chroma .kr,.chroma .kt{color:#06c!important;font-weight:700!important}.chroma .s,.chroma .s1,.chroma .s2,.chroma .sb,.chroma .sc,.chroma .sd,.chroma .se,.chroma .sh,.chroma .si,.chroma .sx{color:#28a745!important}.chroma .m,.chroma .mb,.chroma .mf,.chroma .mh,.chroma .mi,.chroma .mo{color:#e83e8c!important}.chroma .nf{color:#dc3545!important;font-weight:700!important}.chroma .o,.chroma .ow{color:#2c3e50!important}.article-content pre::-webkit-scrollbar{height:8px}.article-content pre::-webkit-scrollbar-track{background:rgba(0,0,0,5%);border-radius:4px}.article-content pre::-webkit-scrollbar-thumb{background:rgba(52,152,219,.4);border-radius:4px}.article-content pre::-webkit-scrollbar-thumb:hover{background:rgba(52,152,219,.6)}pre.chroma,.highlight pre,div.highlight pre,.article-content .highlight pre,.article-content pre.chroma,.article-content div.highlight pre{background:#f3f3f3!important;color:#2c3e50!important}.chroma,.highlight,div.highlight{background:0 0!important;border:none!important;padding:0!important;margin:1.5rem 0!important}.chroma code,.highlight code,div.highlight code,pre code{background:0 0!important;color:#2c3e50!important}.article-content table{width:100%;border-collapse:collapse;margin:2rem 0;background-color:#fff!important;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,8%);border:1px solid #e2e8f0}.article-content table thead{background:linear-gradient(135deg,#1f2937 0%,#111827 100%)!important}.article-content table thead th{color:#fff!important;font-weight:700;font-size:.875rem;text-transform:uppercase;letter-spacing:.1em;padding:1.25rem 1.5rem;text-align:left;border:none!important;border-bottom:none!important;text-shadow:0 1px 2px rgba(0,0,0,.1)}.article-content table tbody tr{background-color:#fff!important;border-top:none!important;transition:all .2s ease}.article-content table tbody tr:nth-child(even){background-color:#f1f5f9!important}.article-content table tbody tr:hover{background-color:#f3f4f6!important;transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.1)}.article-content table tbody td{padding:1.25rem 1.5rem;border:none!important;border-bottom:1px solid #e2e8f0!important;color:#1e293b!important;font-size:.95rem;line-height:1.6;font-weight:500}.article-content table tbody tr:last-child td{border-bottom:none!important}.article-content table td strong,.article-content table th strong{font-weight:700;color:#0f172a!important}.article-content table td code,.article-content table th code{background:linear-gradient(135deg,#f1f5f9 0%,#e2e8f0 100%)!important;color:#475569!important;padding:.3rem .6rem;border-radius:6px;font-size:.85em;font-family:monaco,menlo,ubuntu mono,monospace;font-weight:600;border:1px solid #cbd5e1!important}@media(max-width:768px){.article-content table{font-size:.9rem;margin:1.5rem 0;border-radius:8px}.article-content table thead th,.article-content table tbody td{padding:1rem}.article-content table thead th{font-size:.8rem}}@media(max-width:640px){.article-content table{display:block;overflow-x:auto;white-space:nowrap;border-radius:8px}.article-content table thead th,.article-content table tbody td{padding:.75rem;min-width:140px}}.article-content table tr{border-top:none!important;background-color:transparent!important}.article-content table tr:nth-child(2n){background-color:transparent!important}.article-content table tr th,.article-content table tr td{border:none!important;margin:0!important}@media(prefers-color-scheme:dark){.article-content table{background-color:#fff!important;border-color:#e2e8f0!important;box-shadow:0 4px 20px rgba(0,0,0,8%)!important}.article-content table thead{background:linear-gradient(135deg,#1f2937 0%,#111827 100%)!important}.article-content table tbody tr{background-color:#fff!important}.article-content table tbody tr:nth-child(even){background-color:#f1f5f9!important}.article-content table tbody td{color:#1e293b!important;border-bottom-color:#e2e8f0!important}.article-content table td code,.article-content table th code{background:linear-gradient(135deg,#f1f5f9 0%,#e2e8f0 100%)!important;color:#475569!important;border-color:#cbd5e1!important}}.analysis-pattern-img{display:block;margin:20px auto;max-width:600px;width:100%;height:auto;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.1)}.creational-pattern-img{display:block;margin:20px auto;max-width:700px;width:100%;height:auto;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.1)}.structural-pattern-img{display:block;margin:20px auto;max-width:750px;width:100%;height:auto;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.1)}.behavioral-pattern-img{display:block;margin:20px auto;max-width:800px;width:100%;height:auto;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.1)}.academic-professor-img{display:block;margin:20px auto;max-width:500px;width:100%;height:auto;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 8px rgba(0,0,0,.1);transition:transform .2s ease,box-shadow .2s ease}.academic-professor-img:hover{transform:translateY(-2px);box-shadow:0 6px 12px rgba(0,0,0,.15)}*{font-family:inter,-apple-system,BlinkMacSystemFont,segoe ui,roboto,oxygen,ubuntu,cantarell,fira sans,droid sans,helvetica neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.blog-header{margin-bottom:4rem;padding-bottom:0;border-bottom:none}.blog-title{font-size:3.5rem;font-weight:700;color:#000;margin:0 0 2.5rem;padding-top:30px;letter-spacing:-.03em;line-height:1.1;font-family:inter,sans-serif}.blog-filters{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:3rem;padding-bottom:0;border-bottom:none}.filter-tabs{display:flex;gap:0;flex-wrap:wrap;margin-bottom:0}.filter-tab{background:0 0;border:none;color:#9ca3af;font-size:2rem;font-weight:400;padding:0;border-radius:0;cursor:pointer;transition:color .15s ease;text-transform:capitalize;font-family:inter,sans-serif;position:relative;margin-right:2rem}.filter-tab:hover{color:#374151}.filter-tab.active{color:#000;font-weight:400;background:0 0}.blog-controls{display:flex;align-items:center;gap:2rem}.advanced-filter-control{position:relative;display:flex;align-items:center;gap:.75rem}.filter-btn{display:flex;align-items:center;gap:.5rem;background:0 0;border:none;padding:0;font-size:1.375rem;color:#374151;cursor:pointer;font-family:inter,sans-serif;font-weight:400;transition:color .15s ease}.filter-btn:hover{color:#9ca3af}.filter-btn.active{color:#000}.filter-btn .filter-icon{color:#374151;flex-shrink:0}.filter-btn:hover .filter-icon{color:#9ca3af}.filter-dropdown{position:absolute;top:100%;left:0;z-index:1000;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,4%);margin-top:.5rem;width:480px;max-height:280px;display:none;animation:fadeInDown .15s ease-out;overflow:hidden}.filter-dropdown.position-right{left:auto;right:0}@media(max-width:768px){.filter-dropdown{width:320px;max-height:260px}.filter-dropdown-content{height:180px}}@media(max-width:480px){.filter-dropdown{width:280px;left:50%;transform:translateX(-50%);max-height:240px}.filter-dropdown.position-right{left:50%;right:auto;transform:translateX(-50%)}.filter-dropdown-content{height:160px;padding:1rem}}.filter-dropdown.active{display:block}@keyframes fadeInDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.filter-dropdown-content{display:flex;gap:1.5rem;padding:1.25rem;height:200px;overflow:hidden}.filter-section{flex:1;display:flex;flex-direction:column;min-width:0}.filter-section:not(:last-child){border-right:1px solid #e5e7eb;padding-right:1.5rem}.filter-section-title{font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.75rem;font-family:inter,sans-serif;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.filter-options{display:flex;flex-direction:column;gap:.25rem;flex:1;overflow-y:auto;padding-right:.5rem;min-height:0}.filter-options::-webkit-scrollbar{width:4px}.filter-options::-webkit-scrollbar-track{background:0 0}.filter-options::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:2px}.filter-options::-webkit-scrollbar-thumb:hover{background:#cbd5e1}.filter-option{display:flex;align-items:center;gap:.625rem;cursor:pointer;padding:.25rem 0;font-size:.875rem;font-family:inter,sans-serif;color:#374151;transition:color .15s ease}.filter-option:hover{color:#000}.filter-option input[type=checkbox]{display:none}.checkmark{width:16px;height:16px;border:1.5px solid #d1d5db;border-radius:.25rem;display:flex;align-items:center;justify-content:center;transition:all .15s ease;flex-shrink:0;position:relative}.filter-option input[type=checkbox]:checked+.checkmark{background:#000;border-color:#000}.filter-option input[type=checkbox]:checked+.checkmark::after{content:'';position:absolute;width:8px;height:8px;background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='m13.854 3.646-7.5 7.5a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6 10.293l7.146-7.147a.5.5 0 0 1 .708.708z'/%3e%3c/svg%3e");background-size:contain;background-repeat:no-repeat;background-position:50%}.filter-actions{display:flex;justify-content:flex-end;align-items:center;padding:.875rem 1.25rem;border-top:1px solid #e5e7eb;background:#fff}.filter-cancel-btn{background:0 0;border:none;color:#6b7280;font-size:.875rem;cursor:pointer;padding:.5rem 1rem;font-family:inter,sans-serif;font-weight:500;transition:all .15s ease;border-radius:.375rem}.filter-cancel-btn:hover{color:#000;background:#f3f4f6}.filter-clear-btn{background:#000;color:#fff;border:none;border-radius:.5rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;cursor:pointer;font-family:inter,sans-serif;transition:all .15s ease}.filter-clear-btn:hover{background:#1f2937;transform:translateY(-1px)}.sort-control{position:relative;display:inline-block}.sort-btn{background:0 0;border:none;color:#374151;cursor:pointer;font-size:1.375rem;font-weight:400;font-family:inter,sans-serif;display:flex;align-items:center;gap:.5rem;padding:0;transition:color .15s ease}.sort-btn:hover{color:#9ca3af}.sort-btn.active{color:#000}.sort-btn .sort-icon{width:16px;height:16px;transition:color .15s ease}.sort-btn:hover .sort-icon{color:#9ca3af}.sort-dropdown{position:absolute;top:100%;left:0;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 10px 25px rgba(0,0,0,.1);z-index:1000;min-width:200px;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .2s ease;margin-top:.5rem}.sort-dropdown.active{opacity:1;visibility:visible;transform:translateY(0);animation:fadeInDown .2s ease}.sort-dropdown-content{padding:.75rem 0}.sort-options{display:flex;flex-direction:column}.sort-option{display:flex;align-items:center;padding:.5rem 1rem;cursor:pointer;font-size:.875rem;font-weight:400;color:#374151;font-family:inter,sans-serif;transition:background-color .15s ease}.sort-option:hover{background-color:#f9fafb}.sort-option input[type=radio]{display:none}.radio-mark{width:16px;height:16px;border:1px solid #d1d5db;border-radius:50%;margin-right:.75rem;position:relative;flex-shrink:0;background:#fff}.sort-option input[type=radio]:checked+.radio-mark{border-color:#000;background:#000}.sort-option input[type=radio]:checked+.radio-mark::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;border-radius:50%;background:#fff}@media(max-width:768px){.sort-dropdown{right:0;left:auto;min-width:180px}}@media(max-width:480px){.sort-dropdown{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);min-width:250px;max-width:90vw}.sort-dropdown.active{transform:translate(-50%,-50%)}}.view-toggle{background:#fff;border:1px solid #d1d5db;border-radius:.5rem;padding:.625rem;color:#666;cursor:pointer;transition:all .15s ease}.view-toggle:hover{border-color:#9ca3af;color:#000}.posts-counter{display:none}.filter-info{margin:1rem 0;padding:.75rem 1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;color:#64748b}.filter-info-content{display:flex;justify-content:space-between;align-items:center}.filter-info-text a{color:#0969da;text-decoration:none}.filter-info-text a:hover{text-decoration:underline}.filter-info-close{background:0 0;border:none;font-size:1.25rem;color:#94a3b8;cursor:pointer;padding:0;margin-left:1rem}.filter-info-close:hover{color:#64748b}.blog-posts{margin-top:0}.post-card{background:#fff;border:none;border-radius:0;padding:2rem 0;margin-bottom:0;transition:none;position:relative;border-bottom:1px solid #e5e7eb;display:flex!important;flex-direction:row!important;gap:3rem;align-items:flex-start}.post-card:last-child{border-bottom:none}.post-card:hover{border-color:#e5e7eb;box-shadow:none;transform:none;background:#fafafa}.post-card-meta{display:flex!important;flex-direction:column!important;align-items:flex-start;gap:.5rem;min-width:120px;flex-shrink:0}.post-card-category{background:#f3f4f6!important;color:#6b7280!important;font-size:1rem;font-weight:400;padding:.25rem .5rem;border-radius:.25rem;text-transform:capitalize;font-family:inter,sans-serif;display:inline-block;text-align:left;flex-shrink:0}.post-card-date{color:#9ca3af;font-size:.875rem;font-weight:400;font-family:inter,sans-serif;flex-shrink:0}.post-card-content{flex:1}.post-card-title{margin:0 0 .75rem;font-size:2rem;font-weight:600;line-height:1.25;font-family:inter,sans-serif;letter-spacing:-.015em}.post-card-title a{color:#000;text-decoration:none;transition:color .15s ease}.post-card-title a:hover{color:#666}.post-card-description{color:#6b7280;font-size:1.3rem;line-height:1.5;margin-bottom:0;font-family:inter,sans-serif;font-weight:400}.post-card-tags{display:none}.load-more-section{text-align:center;margin:3rem 0;padding:2rem 0;border-top:1px solid #e5e7eb}.load-more-btn{display:inline-block;background:#000;color:#fff;border:none;border-radius:.25rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;text-decoration:none;margin-bottom:1rem;font-family:inter,sans-serif}.load-more-btn:hover{background:#333;color:#fff;text-decoration:none}.pagination-text{color:#666;font-size:.875rem;font-weight:400;display:block;margin-bottom:.75rem;font-family:inter,sans-serif}.back-to-first-btn{display:inline-flex;align-items:center;gap:.5rem;color:#666;font-size:.875rem;text-decoration:none;padding:.5rem 1rem;border-radius:.25rem;transition:all .15s ease;font-family:inter,sans-serif;font-weight:400}.back-to-first-btn:hover{color:#000;background-color:#f9fafb;text-decoration:none}@media(max-width:768px){.blog-title{font-size:2.5rem;padding-top:24px}.blog-filters{flex-direction:column;align-items:stretch;gap:1rem}.filter-tabs{gap:1rem;justify-content:flex-start;overflow-x:auto;padding-bottom:.5rem}.filter-tab{font-size:1.5rem;margin-right:1.5rem}.filter-btn{font-size:1.5rem}.blog-controls{justify-content:space-between}.post-card{gap:2rem;padding:1.5rem 0}.post-card-meta{gap:.5rem;min-width:100px}.post-card-category,.post-card-date{min-width:auto}.post-card-title{font-size:1.25rem}.post-card-description{font-size:.9375rem}}@media(max-width:480px){.blog-title{font-size:2rem;padding-top:20px}.filter-tabs{gap:.75rem;flex-wrap:wrap}.filter-tab{font-size:1.25rem;margin-right:1rem}.filter-btn{font-size:1.25rem}.post-card{padding:1.5rem 0}.post-card-title{font-size:1.125rem}.post-card-description{font-size:.875rem}}.post-card-category{background:#f3f4f6!important;color:#374151!important}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.post-card{animation:fadeIn .3s ease-out}.filter-tab:focus{outline:none}.load-more-btn:focus,.back-to-first-btn:focus{outline:2px solid #000;outline-offset:2px}@media print{.blog-filters,.load-more-section{display:none}.post-card{break-inside:avoid}}.plantuml-diagram{width:100%;margin:20px 0;overflow:visible}.plantuml-diagram .plantuml-frame{position:relative;display:flex;align-items:center;justify-content:center;min-height:200px;margin:20px 0;padding:20px;background-color:#fff;border:1px solid #e1e1e1;border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.1);cursor:zoom-in;transition:border-color .2s,box-shadow .2s}.plantuml-diagram .plantuml-frame:hover,.plantuml-diagram .plantuml-frame:focus-visible{border-color:#a5b4fc;box-shadow:0 4px 14px rgba(99,102,241,.18)}.plantuml-frame img{display:block;width:auto;height:auto;max-width:100%;max-height:400px;margin:0 auto;border:none;box-shadow:none}