﻿:root{--bg-primary: #1a1b21;--bg-secondary: #25262b;--bg-tertiary: #2c2d33;--text-primary: #f1f3f5;--text-secondary: #ced4da;--text-muted: #adb5bd;--accent: #4dabf7;--accent-hover: #339af0;--border: #2f3035;--tag-bg: #343a40;--tag-text: #ced4da;--code-bg: #2b2c35;--blockquote-bg: #2a2b30;--card-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);--transition: 0.2s ease}*,*::before,*::after{box-sizing:border-box}.navbar,header[role=banner],.site-header{position:relative}.navbar:before,header[role=banner]:before,.site-header:before{content:"Digital Garden";position:absolute;left:0;top:50%;transform:translateY(-50%);font-weight:700;font-size:1.25rem;color:var(--text-primary);display:none}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.6;color:var(--text-primary);background-color:var(--bg-primary);max-width:1000px;margin:0 auto;padding:2rem;overflow-x:hidden}@media(max-width: 768px){body{padding:1rem}}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:700;margin-top:2.5rem;margin-bottom:1rem;line-height:1.3}h1{font-size:2.5rem;margin-top:0;margin-bottom:1.5rem}h2{font-size:2rem;border-bottom:1px solid var(--border);padding-bottom:.5rem}h3{font-size:1.5rem}a{color:var(--accent);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--accent-hover);text-decoration:underline}p{margin:1rem 0;font-size:1.05rem}strong{color:var(--text-primary);font-weight:700}:focus{outline:2px solid var(--accent);outline-offset:2px}.skip-to-content{position:absolute;left:-999px;width:1px;height:1px;top:auto;overflow:hidden}.skip-to-content:focus{display:inline-block;height:auto;width:auto;position:fixed;top:10px;left:10px;padding:10px;background:var(--bg-primary);z-index:999;color:var(--accent);text-decoration:none;border:2px solid var(--accent);border-radius:4px}:root{--text-primary: #f1f3f5;--text-secondary: #ced4da;--text-muted: #adb5bd}blockquote{border-left:4px solid var(--accent);background-color:var(--blockquote-bg);padding:1.25rem 1.5rem;margin:1.75rem 0;border-radius:4px;position:relative;font-style:italic}blockquote::before{content:"“";font-size:4rem;position:absolute;left:10px;top:-20px;color:var(--accent);opacity:.2;font-family:Georgia,serif}blockquote p{margin:0;position:relative;z-index:1}blockquote cite{display:block;margin-top:1rem;font-size:.9rem;color:var(--text-muted);font-style:normal}.blog-card{background-color:var(--bg-secondary);padding:1.5rem;border-radius:12px;box-shadow:var(--card-shadow);margin-bottom:2rem;transition:transform var(--transition),background-color var(--transition),border-color var(--transition);border:1px solid var(--border);position:relative;overflow:hidden}.blog-card:hover{transform:translateY(-4px);background-color:var(--bg-tertiary);border-color:var(--accent)}.blog-card a{text-decoration:none;color:inherit;display:block}.blog-card h3{margin:0 0 .8rem 0;font-size:1.35rem;font-weight:700;color:var(--text-primary)}.blog-card .description{color:var(--text-secondary);margin-bottom:.8rem;line-height:1.6;font-size:.95rem}.blog-card .tags{margin-top:1rem;display:flex;gap:.4rem;flex-wrap:wrap}.blog-card .tag,.article-tag,.tag,.header-tags .tag{font-size:.75rem;padding:4px 10px;background-color:var(--tag-bg);color:var(--tag-text);border-radius:999px;font-weight:500;transition:background-color var(--transition),color var(--transition);display:inline-flex;align-items:center;white-space:nowrap;text-decoration:none}.blog-card .tag:hover,.article-tag:hover,.tag:hover,.header-tags .tag:hover{background-color:var(--accent);color:#fff;text-decoration:none !important}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));gap:2rem;margin-top:2rem;margin-bottom:3rem}.project-card{background-color:var(--bg-secondary);padding:1.5rem;border-radius:12px;box-shadow:var(--card-shadow);transition:transform var(--transition),background-color var(--transition),border-color var(--transition);border:1px solid var(--border);position:relative;overflow:hidden;display:flex;flex-direction:column}.project-card:hover{transform:translateY(-4px);background-color:var(--bg-tertiary);border-color:var(--accent)}.project-card h3{margin:0 0 .8rem 0;font-size:1.35rem;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.project-card .emoji{background:linear-gradient(135deg, rgba(77, 171, 247, 0.2), rgba(116, 192, 252, 0.2));width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;margin-right:.75rem;font-size:20px;box-shadow:0 2px 8px rgba(77,171,247,.15);transition:all .3s ease}.project-card:hover .emoji{transform:scale(1.1) rotate(5deg);box-shadow:0 4px 12px rgba(77,171,247,.25)}.project-card .description{color:var(--text-secondary);margin-bottom:1.2rem;line-height:1.6;font-size:.95rem;flex-grow:1}.project-tech{margin:1rem 0;display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.tech-tag{background-color:rgba(77,171,247,.15);color:var(--accent);border:1px solid rgba(77,171,247,.3);padding:3px 8px;font-size:.7rem;letter-spacing:.02em;text-transform:uppercase;font-weight:600;transition:background-color var(--transition),color var(--transition);display:inline-flex;align-items:center;white-space:nowrap;position:relative;overflow:hidden;border-radius:4px}.tech-tag::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0));transform:translateX(-100%);transition:transform .6s ease}.tech-tag:hover::after{transform:translateX(100%)}.tech-tag:hover{background-color:var(--accent);color:#fff;border-color:var(--accent);transform:translateY(-1px)}.tech-tag:hover{box-shadow:0 0 8px rgba(77,171,247,.4)}.project-links{display:flex;gap:1rem;margin-top:1rem}.project-links a{display:inline-flex;align-items:center;gap:.5rem;color:var(--accent);font-size:.9rem;font-weight:500;transition:color var(--transition)}.project-links a:hover{color:var(--accent-hover);text-decoration:none}#projects{scroll-margin-top:2rem}.section-heading{margin-top:4rem;position:relative}.section-heading#projects::before{content:"";position:absolute;top:-2rem;left:0;width:100%;height:1px;background:linear-gradient(90deg, transparent, var(--border), var(--border), var(--border), transparent)}.project-links{display:flex;gap:1rem;margin-top:auto;padding-top:1rem}.project-links a{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:rgba(77,171,247,.1);border-radius:6px;transition:all .3s ease}.project-links a:hover{background-color:var(--accent);color:#fff;transform:translateY(-2px)}@media(min-width: 769px)and (max-width: 1100px){.projects-grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 768px){.projects-grid{grid-template-columns:1fr}.project-card{margin-bottom:1.5rem}}table{width:100%;border-collapse:collapse;margin:2rem 0;border-radius:8px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.1)}thead{background-color:var(--accent)}th{padding:1rem;text-align:left;color:#fff;font-weight:600}td{padding:.75rem 1rem;border-bottom:1px solid var(--border)}tbody tr{background-color:var(--bg-secondary);transition:background-color var(--transition)}tbody tr:nth-child(even){background-color:var(--bg-tertiary)}tbody tr:hover{background-color:rgba(77,171,247,.1)}.homepage .main-content{max-width:850px;margin:0 auto}.profile-section{display:flex;flex-direction:column;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid var(--border);position:relative}.profile-avatar{width:120px;height:120px;border-radius:50%;object-fit:cover;margin-bottom:1.5rem;border:3px solid var(--accent)}.profile-bio{max-width:800px;margin-bottom:1.5rem}.contact-links{display:flex;gap:1.5rem;margin-top:1rem;flex-wrap:wrap}.contact-links a{display:inline-flex;align-items:center;gap:.5rem}.section-heading{display:flex;align-items:center;gap:.75rem;margin-top:3rem}.section-heading{position:relative;padding-bottom:.5rem;margin-bottom:1.5rem}.section-heading h2{display:inline-block;background:linear-gradient(90deg, var(--accent), #74c0fc);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);background-clip:text;color:rgba(0,0,0,0)}.section-heading::after{content:"";position:absolute;bottom:0;left:0;width:100px;height:3px;background:linear-gradient(90deg, var(--accent), #74c0fc);border-radius:3px}.site-footer{margin-top:4rem;padding-top:2rem;border-top:1px solid var(--border);text-align:center;color:var(--text-muted);font-size:.9rem}.site-nav{display:flex;justify-content:flex-end;align-items:center;padding:1rem 0;margin-bottom:2rem;border-bottom:1px solid var(--border);width:100%;overflow:visible}.site-nav .logo,.site-nav .logo a,.navbar-inner .logo,.navbar-inner .logo a,a.navbar-item[href="/"],.site-title,.site-title-container,a.site-title{display:block !important;visibility:visible !important;color:var(--text-primary) !important;font-weight:700 !important;font-size:1.4rem !important}.site-nav:before{content:"";display:block;flex:1}.nav-links{display:flex;gap:1.5rem}.nav-links a{color:var(--text-secondary);transition:color var(--transition)}.nav-links a:hover{color:var(--accent);text-decoration:none}.article-header{margin-bottom:2rem}.article-title{font-size:2.5rem;line-height:1.2;margin-bottom:1rem}.article-meta{color:var(--text-secondary);font-size:.9rem;margin-bottom:1.5rem;display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.reading-time{color:var(--text-muted)}.article-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 2rem 0}.article-content{font-size:1.05rem;line-height:1.7;margin-top:2rem}.article-content h2{margin-top:2.5rem;margin-bottom:1rem}.article-content h3{margin-top:2rem;margin-bottom:.75rem}.article-content p{margin:1.25rem 0}.article-content blockquote{margin:2rem 0;font-style:italic}.article-content img{margin:2.5rem auto;border-radius:8px;box-shadow:0 5px 15px rgba(0,0,0,.1)}img{max-width:100%;height:auto;border-radius:8px;display:block;margin:2rem auto;box-shadow:0 4px 12px rgba(0,0,0,.1);transition:transform .3s ease,box-shadow .3s ease}img:hover{transform:scale(1.01);box-shadow:0 8px 24px rgba(0,0,0,.15)}.image-caption{text-align:center;color:var(--text-muted);font-size:.9rem;margin-top:.5rem;font-style:italic}.image-gallery{display:grid;grid-template-columns:repeat(auto-fill, minmax(250px, 1fr));gap:1rem;margin:2rem 0}.image-gallery img{margin:0;width:100%;height:200px;object-fit:cover}.image-gallery figure{margin:0;overflow:hidden;border-radius:8px;background-color:var(--bg-secondary);border:1px solid var(--border);transition:transform .3s ease,box-shadow .3s ease}.image-gallery figure:hover{transform:translateY(-5px);box-shadow:var(--card-shadow)}.image-gallery figcaption{padding:.75rem;color:var(--text-secondary);font-size:.9rem}.article-content img{cursor:zoom-in}img{filter:brightness(0.95)}.scroll-top{position:fixed;bottom:20px;right:20px;background:var(--accent);color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--card-shadow);z-index:100;transition:all var(--transition);opacity:0;transform:translateY(20px)}.scroll-top.visible{opacity:1;transform:translateY(0)}.scroll-top:hover{background:var(--accent-hover);transform:translateY(-5px)}@media(max-width: 768px){body{padding:1rem}h1{font-size:2rem}h2{font-size:1.6rem}.profile-section{align-items:center;text-align:center}.contact-links{justify-content:center}.projects-grid{grid-template-columns:1fr}.blog-grid{grid-template-columns:1fr}.article-navigation{flex-direction:column;gap:1.5rem}.prev-article,.next-article{max-width:100%}.search-box{max-width:95%;transform:translateY(50px)}}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{from{transform:translateX(-20px);opacity:0}to{transform:translateX(0);opacity:1}}.blog-card,.project-card{animation:fadeIn .5s ease-out;animation-fill-mode:both}.blog-card:nth-child(1),.project-card:nth-child(1){animation-delay:.1s}.blog-card:nth-child(2),.project-card:nth-child(2){animation-delay:.2s}.blog-card:nth-child(3),.project-card:nth-child(3){animation-delay:.3s}.blog-card:nth-child(4),.project-card:nth-child(4){animation-delay:.4s}.blog-card:nth-child(5),.project-card:nth-child(5){animation-delay:.5s}.blog-card:nth-child(6),.project-card:nth-child(6){animation-delay:.6s}.blog-card:nth-child(7),.project-card:nth-child(7){animation-delay:.7s}.blog-card:nth-child(8),.project-card:nth-child(8){animation-delay:.8s}.blog-card:nth-child(9),.project-card:nth-child(9){animation-delay:.9s}.blog-card:nth-child(10),.project-card:nth-child(10){animation-delay:1s}h1,h2,h3,h4,h5,h6{position:relative}.section-heading h2{animation:slideIn .5s ease-out}.theme-toggle{position:fixed;bottom:20px;right:20px;background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--card-shadow);z-index:100;transition:all var(--transition)}.theme-toggle:hover{transform:scale(1.1);background:var(--bg-tertiary)}@media print{body{background:#fff;color:#000}.site-nav,.site-footer,.search-button,.theme-toggle{display:none}a{color:#000;text-decoration:underline}.article-content{font-size:12pt}h1,h2,h3,h4,h5,h6{page-break-after:avoid}img,pre,blockquote,table{page-break-inside:avoid}}.navbar-inner .flex-container{display:flex;align-items:center;justify-content:space-between}.filetree-sidebar{background-color:var(--bg-secondary) !important;border-right:1px solid var(--border) !important}.filetree-sidebar .tree-item{color:var(--text-secondary) !important}.filetree-sidebar .tree-item:hover{background-color:var(--bg-tertiary) !important}.filetree-sidebar .tree-item.is-active{background-color:rgba(77,171,247,.1) !important;color:var(--accent) !important}.content{max-width:900px !important;margin:0 auto !important;padding:2rem !important}.backlinks{background-color:var(--bg-secondary) !important;border:1px solid var(--border) !important;border-radius:8px !important;padding:1rem !important;margin-top:3rem !important}.backlinks-title{color:var(--text-primary) !important;font-weight:600 !important;margin-bottom:1rem !important}.backlinks-list{list-style:none !important;padding:0 !important}.backlinks-list li{margin-bottom:.5rem !important}.backlinks-list a{color:var(--accent) !important;text-decoration:none !important}.backlinks-list a:hover{color:var(--accent-hover) !important;text-decoration:underline !important}html{scroll-behavior:smooth}::selection{background-color:var(--accent);color:#fff}.read-more a{color:var(--accent);font-weight:500;display:inline-flex;align-items:center;margin-top:.5rem;transition:transform var(--transition),color var(--transition)}.read-more a:hover{color:var(--accent-hover);transform:translateX(3px)}.article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:2rem;font-size:.9rem;color:var(--text-secondary)}.article-category{display:inline-block;padding:.25rem .75rem;background-color:var(--accent);color:#fff;border-radius:999px;font-weight:500;font-size:.85rem}.reading-time{color:var(--text-muted);font-style:italic}img,video,iframe,object,embed{max-width:100%;height:auto;display:block}.content-container,.main-content,.homepage,.article,.blog-grid,.projects-grid{width:100%;max-width:100%;overflow-x:hidden;padding:0;margin:0 auto}html,body{overflow-x:hidden;width:100%;max-width:100vw;position:relative}*{box-sizing:border-box;max-width:100%}article,.article,.article-content,main,.main{width:100%;max-width:100%;overflow-x:hidden}article h1,.article h1,main h1,.article-title{font-size:2.5rem;margin-top:1.5rem;margin-bottom:1rem;width:100%;display:block;clear:both;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}h1+h1,.article-title+h1,main>h1:first-child+h1{display:none}a:not(.blog-card a):not(.project-card a):not(.tag):not(.nav-links a):not(.read-more a){position:relative;text-decoration:none}a:not(.blog-card a):not(.project-card a):not(.tag):not(.nav-links a)::after{content:"";position:absolute;width:100%;height:1px;bottom:0;left:0;background-color:var(--accent);transform:scaleX(0);transform-origin:bottom right;transition:transform .3s ease}a:not(.blog-card a):not(.project-card a):not(.tag):not(.nav-links a):hover::after{transform:scaleX(1);transform-origin:bottom left}.loading{display:inline-block;width:50px;height:50px;border:3px solid rgba(77,171,247,.3);border-radius:50%;border-top-color:var(--accent);animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a.internal-link{color:var(--accent);text-decoration:none}a.internal-link:hover{color:var(--accent-hover);text-decoration:underline}.page-header{display:flex;flex-direction:column;margin-bottom:2rem;width:100%}.title-block{width:100%;max-width:100%}.page-title+h1,main>header+h1,#language-modeling---n-gram+h1,h1[id=language-modeling---n-gram]+h1{display:none !important}.breadcrumb-container{display:flex;flex-wrap:wrap;margin-bottom:1rem;width:100%}.tag-container{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}body[class*=language-modeling] .cm-header,body[class*=language-modeling] h1{width:100%;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;white-space:normal}span.tag,a.tag,div.tag{display:inline-flex !important;align-items:center !important;white-space:nowrap !important;position:relative}span.tag::before,a.tag::before,div.tag::before{display:none !important;content:none !important}.tag:hover{background-color:var(--accent) !important;color:#fff !important;text-decoration:none !important}a[href*="[["]{color:var(--accent)}.cm-s-obsidian h1,.cm-s-obsidian h2,.cm-s-obsidian h3,.cm-s-obsidian h4,.cm-s-obsidian h5,.cm-s-obsidian h6{color:var(--text-primary);font-weight:700}.section-heading{position:relative;padding-bottom:.5rem;margin-bottom:1.5rem}.section-heading h2{display:inline-block;background:linear-gradient(90deg, var(--accent), #74c0fc);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);background-clip:text;color:rgba(0,0,0,0)}.section-heading::after{content:"";position:absolute;bottom:0;left:0;width:100px;height:3px;background:linear-gradient(90deg, var(--accent), #74c0fc);border-radius:3px}.project-card{position:relative;overflow:hidden;z-index:1}.project-card::before{content:"";position:absolute;top:0;left:0;width:100%;height:5px;background:linear-gradient(90deg, var(--accent), #74c0fc);z-index:2;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.project-card:hover::before{transform:scaleX(1)}.project-card .emoji{background:linear-gradient(135deg, rgba(77, 171, 247, 0.2), rgba(116, 192, 252, 0.2));width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;margin-right:.75rem;font-size:20px;box-shadow:0 2px 8px rgba(77,171,247,.15);transition:all .3s ease}.project-card:hover .emoji{transform:scale(1.1) rotate(5deg);box-shadow:0 4px 12px rgba(77,171,247,.25)}.project-card{display:flex;flex-direction:column;height:100%}.project-card h3{display:flex;align-items:center;margin-bottom:1rem}.project-card .description{flex-grow:1;margin-bottom:1.2rem}.project-tech{margin-bottom:1rem}.project-card{background:linear-gradient(145deg, var(--bg-secondary), var(--bg-tertiary));border:1px solid var(--border)}.project-card:focus-within{outline:2px solid var(--accent);outline-offset:2px}.project-card h3,.project-card .description,.project-card .project-tech,.project-card .project-links{padding:0 .25rem}.project-links a:focus{outline:2px solid var(--accent);outline-offset:2px}.tech-tag:focus{outline:2px solid var(--accent);outline-offset:2px}.project-card{backface-visibility:hidden;transform:translateZ(0);-webkit-font-smoothing:subpixel-antialiased}.project-card{position:relative;overflow:hidden}.project-card::after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 100% 150%, rgba(77, 171, 247, 0.03) 24%, transparent 25%),radial-gradient(circle at 0 150%, rgba(77, 171, 247, 0.03) 24%, transparent 25%),radial-gradient(circle at 100% 50%, rgba(77, 171, 247, 0.03) 16%, transparent 17%),radial-gradient(circle at 0 50%, rgba(77, 171, 247, 0.03) 16%, transparent 17%);background-size:10px 10px;background-position:0 0,0 0,5px 5px,5px 5px;pointer-events:none;opacity:0;transition:opacity .3s ease;z-index:0}.project-card:hover::after{opacity:1}.project-card>*{position:relative;z-index:1}/*# sourceMappingURL=custom-style.css.map */
