:root{--font-display:var(--font-space-grotesk), system-ui, sans-serif;--font-body:var(--font-inter), system-ui, sans-serif;--font-mono:var(--font-jetbrains-mono), ui-monospace, monospace;--bg:#0a0b0e;--bg-2:#0d0f13;--surface:#121419;--surface-2:#171a21;--surface-hover:#1b1f27;--line:#ffffff14;--line-strong:#ffffff24;--text:#e8eaef;--text-dim:#99a0ac;--text-faint:#646b77;--accent:#54cfe0;--accent-soft:#54cfe024;--accent-line:#54cfe066;--cat:var(--accent);--container:1240px;--radius:14px;--radius-sm:10px;--ease:cubic-bezier(.16, 1, .3, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.cat-reverse-engineering{--cat:#54cfe0}.cat-guvenlik{--cat:#ef6f6f}.cat-yazilim{--cat:#b877dd}.cat-ctf{--cat:#5ad19a}.cat-donanim{--cat:#f0a64a}.cat-araclar{--cat:#5bb5e6}.cat-notlar{--cat:#aab2bf}*{box-sizing:border-box}html{background:var(--bg);background-image:radial-gradient(1200px 600px at 70% -10%, #54cfe00f, transparent 60%), linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;scroll-behavior:smooth;background-position:0 0,-1px -1px,-1px -1px;background-size:auto,64px 64px,64px 64px}body{font-family:var(--font-body);color:var(--text);background:0 0;min-height:100dvh;margin:0;font-size:17px;line-height:1.65}body:before{content:"";background:linear-gradient(180deg, transparent, var(--bg) 80%);pointer-events:none;z-index:-2;position:fixed;inset:0}img{max-width:100%;height:auto;display:block}svg{vertical-align:middle}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);margin:0;font-weight:600;line-height:1.05}p{margin:0}.mono{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);font-size:.78rem}.container{width:100%;max-width:var(--container);margin:0 auto;padding-inline:28px}@media (max-width:640px){.container{padding-inline:18px}}.section{padding-block:clamp(64px,9vw,128px)}.section-head{flex-direction:column;gap:14px;max-width:60ch;margin-bottom:48px;display:flex}.section-head h2{font-size:clamp(1.8rem,4vw,2.75rem)}.section-head p{color:var(--text-dim);font-size:1.05rem}.section-head.row-between{flex-direction:row;justify-content:space-between;align-items:center;gap:20px;max-width:none}@media (max-width:540px){.section-head.row-between{flex-direction:column;align-items:flex-start}}.btn{font-family:var(--font-display);cursor:pointer;transition:transform .2s var(--ease), background .2s var(--ease), border-color .2s var(--ease);white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:9px;padding:12px 22px;font-size:.98rem;font-weight:500;display:inline-flex}.btn:active{transform:translateY(1px)scale(.99)}.btn-primary{background:var(--accent);color:#04181c}.btn-primary:hover{background:#6fdcec}.btn-ghost{color:var(--text);border-color:var(--line-strong);background:0 0}.btn-ghost:hover{border-color:var(--accent-line);background:var(--accent-soft)}.nav{z-index:50;border-bottom:1px solid var(--line);background:color-mix(in oklab, var(--bg) 72%, transparent);-webkit-backdrop-filter:blur(14px)saturate(140%);align-items:center;height:68px;display:flex;position:sticky;top:0}.nav-inner{width:100%;max-width:var(--container);justify-content:space-between;align-items:center;margin:0 auto;padding-inline:28px;display:flex}@media (max-width:640px){.nav-inner{padding-inline:18px}}.brand{font-family:var(--font-display);letter-spacing:-.01em;align-items:center;gap:9px;font-size:1.06rem;font-weight:600;display:inline-flex}.brand-dot{background:var(--accent);width:9px;height:9px;box-shadow:0 0 14px 1px var(--accent-line);border-radius:50%}.nav-links{align-items:center;gap:26px;display:flex}.nav-links a{color:var(--text-dim);transition:color .18s var(--ease);font-size:.95rem}.nav-links a:hover{color:var(--text)}.nav-cta{align-items:center;gap:16px;display:flex}.lang-switch{font-family:var(--font-mono);letter-spacing:.08em;color:var(--text-faint);border:1px solid var(--line);border-radius:999px;align-items:center;gap:5px;padding:5px 11px;font-size:.72rem;display:inline-flex}.lang-switch:hover{border-color:var(--line-strong)}.lang-switch .on{color:var(--accent)}.lang-switch .sep{opacity:.4}.nav-toggle{color:var(--text);cursor:pointer;background:0 0;border:none;display:none}@media (max-width:820px){.nav-links{display:none}.nav-toggle{display:inline-flex}}.nav-mobile{border-bottom:1px solid var(--line);background:color-mix(in oklab, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(14px);z-index:49;flex-direction:column;gap:4px;padding:14px 18px 22px;display:flex;position:sticky;top:68px}.nav-mobile a{font-family:var(--font-display);color:var(--text-dim);border-bottom:1px solid var(--line);padding:10px 0;font-size:1.1rem}.nav-mobile a:last-child{border-bottom:none}.nav-mobile a:hover{color:var(--text)}.hero{align-items:center;min-height:calc(100dvh - 68px);display:flex;position:relative;overflow:hidden}.page-fx{z-index:-1;pointer-events:none;position:fixed;inset:0}.hero-canvas{width:100%;height:100%;display:block}.hero-inner{z-index:1;grid-template-columns:1.5fr 1fr;align-items:center;gap:40px;width:100%;display:grid;position:relative}@media (max-width:900px){.hero-inner{grid-template-columns:1fr}}.hero-eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);align-items:center;gap:10px;margin-bottom:26px;font-size:.76rem;display:inline-flex}.hero h1{font-size:clamp(2.8rem,8vw,6rem);line-height:.98}.hero h1 .accent{color:#0000;-webkit-text-stroke:1px var(--accent-line);background:linear-gradient(180deg, var(--text), color-mix(in oklab, var(--accent) 60%, var(--text)));-webkit-background-clip:text;background-clip:text;display:block}.hero-sub{max-width:46ch;color:var(--text-dim);margin-top:26px;font-size:1.18rem;line-height:1.6}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:36px;display:flex}.hero-side{border-left:1px solid var(--line);flex-direction:column;gap:10px;padding-left:26px;display:flex}@media (max-width:900px){.hero-side{border-left:none;border-top:1px solid var(--line);padding-top:24px;padding-left:0}}.hero-stat .n{font-family:var(--font-display);color:var(--text);font-size:2rem}.hero-stat .l{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);font-size:.72rem}.hero-index{font-family:var(--font-display);color:var(--text-dim);border-bottom:1px solid var(--line);transition:color .2s var(--ease), padding-left .2s var(--ease);align-items:center;gap:12px;padding:9px 0;font-size:1.02rem;display:flex}.hero-index:last-child{border-bottom:none}.hero-index .dot{background:var(--cat);width:8px;height:8px;box-shadow:0 0 10px 0 color-mix(in oklab, var(--cat) 60%, transparent);border-radius:50%;flex-shrink:0}.hero-index:hover{color:var(--text);padding-left:6px}.hero-glow{filter:blur(20px);pointer-events:none;background:radial-gradient(circle,#54cfe01f,#0000 65%);width:520px;height:520px;position:absolute;top:20%;right:-10%}.cine-hero{height:220vh;position:relative}.cine-stage{height:100vh;position:sticky;top:0;overflow:hidden}.cine-imgwrap{z-index:0;will-change:transform, filter;width:116%;height:116%;position:absolute;top:-8%;left:-8%}.cine-img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.cine-glow{z-index:1;pointer-events:none;mix-blend-mode:screen;background:radial-gradient(55% 55% at 28% 32%,#54cfe066,#0000 60%),radial-gradient(50% 50% at 82% 72%,#b877dd57,#0000 60%),radial-gradient(45% 45% at 60% 105%,#f0a64a38,#0000 60%);position:absolute;inset:0}.cine-scrim{z-index:2;pointer-events:none;background:linear-gradient(90deg,#0a0b0eeb,#0a0b0e73 55%,#0a0b0e14 82%,#0000),linear-gradient(#0000 52%,#0a0b0ed1);position:absolute;inset:0}.cine-content{z-index:3;will-change:transform, opacity;flex-direction:column;justify-content:center;display:flex;position:absolute;inset:0}.cine-content .hero-eyebrow{margin-bottom:24px}.cine-title{max-width:14ch;font-size:clamp(2.8rem,8vw,6rem);line-height:.98}.cine-title .accent{color:#0000;-webkit-text-stroke:1px var(--accent-line);background:linear-gradient(180deg, var(--text), color-mix(in oklab, var(--accent) 60%, var(--text)));-webkit-background-clip:text;background-clip:text;display:block}.cine-content .hero-sub{max-width:44ch}.cine-cue{z-index:3;font-family:var(--font-mono);letter-spacing:.28em;text-transform:uppercase;color:var(--text-faint);pointer-events:none;font-size:.7rem;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.cine-static{height:auto}.cine-static .cine-stage,.cine-static .cine-content{position:relative}.cine-static .cine-stage{height:auto;min-height:calc(100dvh - 68px);top:auto}.cine-static .cine-content{min-height:inherit;inset:auto}@media (max-width:767px){.cine-hero{height:auto}.cine-stage{height:auto;min-height:calc(100dvh - 68px);position:relative;top:auto}}.bento{grid-template-columns:repeat(6,1fr);gap:16px;display:grid}.cat-card{border:1px solid var(--line);border-radius:var(--radius);background:radial-gradient(420px 180px at 0% 0%, color-mix(in oklab, var(--cat) 14%, transparent), transparent 70%), var(--surface);min-height:200px;transition:border-color .25s var(--ease), transform .25s var(--ease), background .25s var(--ease);flex-direction:column;justify-content:space-between;gap:28px;padding:24px;display:flex;position:relative;overflow:hidden}.cat-card:hover{border-color:color-mix(in oklab, var(--cat) 55%, var(--line));transform:translateY(-3px)}.cat-card:after{content:"";border-radius:inherit;transition:box-shadow .25s var(--ease);position:absolute;inset:0;box-shadow:inset 0 0 0 1px #0000}.cat-card:hover:after{box-shadow:inset 0 1px 0 0 color-mix(in oklab, var(--cat) 40%, transparent)}.cat-icon{width:46px;height:46px;color:var(--cat);background:color-mix(in oklab, var(--cat) 14%, transparent);border:1px solid color-mix(in oklab, var(--cat) 28%, transparent);border-radius:11px;place-items:center;display:grid}.cat-card h3{margin-bottom:6px;font-size:1.35rem}.cat-card p{color:var(--text-dim);font-size:.96rem}.cat-meta{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);justify-content:space-between;align-items:center;font-size:.72rem;display:flex}.cat-meta .arrow{color:var(--cat);transition:transform .25s var(--ease)}.cat-card:hover .cat-meta .arrow{transform:translate(4px)}.bento>*{display:flex}.bento>*>.cat-card{width:100%}.bento>.span-3{grid-column:span 3}.bento>.span-2{grid-column:span 2}@media (max-width:900px){.bento{grid-template-columns:repeat(2,1fr)}.bento>.span-3,.bento>.span-2{grid-column:span 1}}@media (max-width:540px){.bento{grid-template-columns:1fr}}.posts-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}@media (max-width:900px){.posts-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.posts-grid{grid-template-columns:1fr}}.post-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);transition:border-color .25s var(--ease), transform .25s var(--ease);flex-direction:column;display:flex;overflow:hidden}.post-card:hover{border-color:var(--line-strong);transform:translateY(-3px)}.post-cover{aspect-ratio:16/10;background:linear-gradient(135deg, var(--surface-2), var(--bg-2));border-bottom:1px solid var(--line);place-items:center;display:grid;position:relative}.post-cover .ph{color:var(--text-faint);opacity:.4}.post-body{flex-direction:column;flex:1;gap:12px;padding:20px;display:flex}.post-tagrow{align-items:center;gap:10px;display:flex}.cat-pill{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--cat);border:1px solid color-mix(in oklab, var(--cat) 30%, transparent);background:color-mix(in oklab, var(--cat) 10%, transparent);border-radius:999px;padding:3px 10px;font-size:.68rem}.post-card h3{font-size:1.2rem;line-height:1.2}.post-card .excerpt{color:var(--text-dim);font-size:.94rem}.post-meta{font-family:var(--font-mono);color:var(--text-faint);letter-spacing:.04em;margin-top:auto;font-size:.72rem}.empty{border:1px dashed var(--line-strong);border-radius:var(--radius);text-align:center;color:var(--text-dim);background:var(--surface);padding:56px 24px}.empty .mono{color:var(--accent);margin-bottom:10px;display:block}.why{border:1px solid var(--line);border-radius:var(--radius);background:radial-gradient(700px 300px at 100% 0%, #54cfe00f, transparent 60%), var(--surface);grid-template-columns:1.2fr 1fr;align-items:center;gap:40px;padding:clamp(32px,5vw,64px);display:grid}@media (max-width:820px){.why{grid-template-columns:1fr}}.why h2{margin-bottom:18px;font-size:clamp(1.8rem,4vw,2.6rem)}.why p{color:var(--text-dim);max-width:54ch;font-size:1.05rem}.why-list{flex-direction:column;gap:16px;display:flex}.why-item{align-items:flex-start;gap:14px;display:flex}.why-item .ic{color:var(--accent);flex-shrink:0;margin-top:2px}.why-item .t{font-family:var(--font-display);color:var(--text);font-size:1.02rem}.why-item .d{color:var(--text-faint);font-size:.9rem}.footer{border-top:1px solid var(--line);background:var(--bg-2);margin-top:40px;padding-block:56px 40px}.footer-grid{grid-template-columns:2fr 1fr 1fr;gap:40px;display:grid}@media (max-width:720px){.footer-grid{grid-template-columns:1fr;gap:28px}}.footer h4{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);margin-bottom:16px;font-size:.72rem;font-weight:500}.footer-col a{color:var(--text-dim);padding:5px 0;font-size:.95rem;display:block}.footer-col a:hover{color:var(--text)}.footer-brand p{color:var(--text-dim);max-width:38ch;margin-top:14px;font-size:.95rem}.footer-bottom{border-top:1px solid var(--line);font-family:var(--font-mono);color:var(--text-faint);letter-spacing:.04em;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:48px;padding-top:24px;font-size:.74rem;display:flex}.container-narrow{max-width:780px}.page-head{flex-direction:column;gap:16px;margin-bottom:36px;padding-top:18px;display:flex}.page-head h1{font-size:clamp(2.4rem,6vw,3.8rem)}.page-head .lead,.page-head>p{color:var(--text-dim);max-width:60ch;font-size:1.12rem}.cat-page-head .cat-icon{margin-bottom:4px}.filter-row{flex-wrap:wrap;gap:10px;margin-bottom:40px;display:flex}.chip{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);border:1px solid var(--line);background:var(--surface);transition:color .2s var(--ease), border-color .2s var(--ease), background .2s var(--ease);border-radius:999px;padding:8px 14px;font-size:.74rem}.chip:hover{color:var(--text);border-color:color-mix(in oklab, var(--cat) 50%, var(--line))}.chip-active{color:var(--cat);border-color:color-mix(in oklab, var(--cat) 55%, transparent);background:color-mix(in oklab, var(--cat) 12%, transparent)}.back-link{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--cat);align-items:center;gap:8px;margin-bottom:28px;font-size:.76rem;display:inline-flex}.back-link:hover{opacity:.8}.post-header{flex-direction:column;gap:18px;margin-bottom:32px;display:flex}.post-header h1{font-size:clamp(2.2rem,5.5vw,3.4rem)}.post-header .lead{color:var(--text-dim);max-width:62ch;font-size:1.18rem}.post-hero-img{border-radius:var(--radius);border:1px solid var(--line);width:100%;margin-bottom:40px}.prose{color:var(--text);font-size:1.08rem;line-height:1.8}.prose>*+*{margin-top:1.25em}.prose h2{margin-top:1.8em;font-size:1.7rem}.prose h3{margin-top:1.6em;font-size:1.35rem}.prose p{color:#cfd3db}.prose a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.prose ul,.prose ol{color:#cfd3db;padding-left:1.3em}.prose li+li{margin-top:.4em}.prose blockquote{border-left:2px solid var(--accent-line);color:var(--text-dim);padding:4px 0 4px 20px;font-style:italic}.prose img{border-radius:var(--radius);border:1px solid var(--line)}.prose code{font-family:var(--font-mono);background:var(--surface-2);border:1px solid var(--line);border-radius:6px;padding:1px 6px;font-size:.88em}.prose pre{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:18px;overflow-x:auto}.prose pre code{background:0 0;border:none;padding:0}.about-focus{border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);gap:22px;margin-top:44px;padding-top:36px;display:grid}@media (max-width:600px){.about-focus{grid-template-columns:1fr}}.contact-card{border:1px solid var(--line);border-radius:var(--radius);background:radial-gradient(500px 220px at 0% 0%, var(--accent-soft), transparent 65%), var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px;padding:28px;display:flex}.contact-card .mono{margin-bottom:8px;display:block}.contact-email{font-family:var(--font-display);color:var(--text);font-size:1.5rem}.contact-email:hover{color:var(--accent)}.contact-links{flex-direction:column;gap:10px;display:flex}.contact-link{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-dim);transition:color .2s var(--ease), border-color .2s var(--ease);align-items:center;gap:12px;padding:16px 20px;display:flex}.contact-link:hover{color:var(--text);border-color:var(--line-strong)}.contact-link .ext{color:var(--text-faint);margin-left:auto}.prose .blk-callout{--c:var(--accent);border-radius:var(--radius-sm);border:1px solid color-mix(in oklab, var(--c) 35%, var(--line));background:color-mix(in oklab, var(--c) 9%, var(--surface));gap:14px;margin:1.6em 0;padding:18px 20px;display:flex}.blk-callout.blk-info{--c:#54cfe0}.blk-callout.blk-warning{--c:#f0a64a}.blk-callout.blk-safety{--c:#ef6f6f}.blk-callout.blk-result,.blk-callout.blk-success{--c:#5ad19a}.blk-callout.blk-note{--c:#9aa6b8}.blk-callout .blk-ic{color:var(--c);flex-shrink:0;margin-top:2px}.blk-callout .blk-title{font-family:var(--font-display);color:var(--text);margin-bottom:4px;font-weight:600}.blk-callout .blk-body{color:var(--text-dim);margin:0;font-size:1rem;line-height:1.6}.blk-head{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);align-items:center;gap:9px;margin-bottom:12px;font-size:.74rem;display:flex}.prose .blk-itemlist,.prose .blk-steps,.prose .blk-note{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);margin:1.6em 0;padding:20px 22px}.blk-itemlist ul{margin:0;padding:0;list-style:none}.blk-itemlist li{border-bottom:1px solid var(--line);color:var(--text);justify-content:space-between;align-items:baseline;gap:16px;padding:9px 0;display:flex}.blk-itemlist li:last-child{border-bottom:none}.blk-itemlist li em{color:var(--text-faint);text-align:right;font-size:.9rem;font-style:normal}.blk-steps ol{margin:0;padding-left:1.3em}.blk-steps li{color:var(--text);padding:7px 0}.blk-steps li strong{font-family:var(--font-display);margin-bottom:2px;display:block}.blk-steps li span{color:var(--text-dim)}.blk-note p{color:var(--text-dim);margin:0;line-height:1.7}.blk-note-problem .blk-head{color:#ef6f6f}.blk-note-solution .blk-head{color:#5ad19a}.blk-note-nextStep .blk-head{color:#54cfe0}.prose .blk-code{margin:1.6em 0;position:relative}.blk-code .blk-lang{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint);font-size:.68rem;position:absolute;top:8px;right:12px}.blk-code pre{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);margin:0;padding:18px;overflow-x:auto}.blk-code code{font-family:var(--font-mono);color:#cfd3db;font-size:.88rem}.blk-code .shiki,.blk-code .shiki span{font-family:var(--font-mono);font-size:.88rem}.blk-code .shiki{border:1px solid var(--line);border-radius:var(--radius-sm);margin:0;padding:18px;line-height:1.6;overflow-x:auto;background:var(--surface-2)!important}.prose .blk-gallery{grid-template-columns:repeat(2,1fr);gap:12px;margin:1.6em 0;display:grid}@media (max-width:540px){.prose .blk-gallery{grid-template-columns:1fr}}.blk-gallery figure{margin:0}.blk-gallery img{border-radius:var(--radius-sm);border:1px solid var(--line);width:100%}.blk-gallery figcaption,.blk-video figcaption{font-family:var(--font-mono);color:var(--text-faint);margin-top:8px;font-size:.74rem}.prose .blk-video{margin:1.6em 0}.blk-video-frame{aspect-ratio:16/9;border-radius:var(--radius-sm);border:1px solid var(--line);position:relative;overflow:hidden}.blk-video-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.reveal{opacity:0;transform:translateY(22px)}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto}.reveal{opacity:1!important;transform:none!important}}
