/*
Theme Name: Bolcal Editorial
Theme URI: https://cagribolcal.com.tr/
Author: Bolcal
Description: Çağrı Bolcal için hafif, okunaklı ve bileşen destekli geliştirici blog teması.
Version: 1.0.1
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: bolcal-editorial
*/
:root{--bg:#f7f8f8;--surface:#fff;--ink:#18242c;--muted:#65727a;--line:#dce4e4;--brand:#087e83;--brand-dark:#08656a;--soft:#eaf5f4;--radius:18px;--wrap:1160px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased}
body.admin-bar .site-header{top:32px}
img{max-width:100%;height:auto}
a{color:var(--brand-dark);text-decoration:none}
a:hover{text-decoration:underline}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
button,input,textarea{border-radius:10px}
:focus-visible{outline:3px solid #16a5a9;outline-offset:3px}
.container{width:min(calc(100% - 48px),var(--wrap));margin-inline:auto}
.screen-reader-text,.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link:focus{position:fixed!important;clip:auto;width:auto;height:auto;z-index:9999;top:10px;left:10px;padding:10px 16px;background:#fff}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}
.header-inner{display:flex;align-items:center;gap:30px;min-height:82px}
.brand{display:inline-flex;align-items:center;min-width:165px;flex:none}
.brand img{display:block;width:155px;max-height:55px;object-fit:contain;object-position:left center}
.brand-name{font-size:1.28rem;font-weight:800;letter-spacing:-.04em;color:var(--ink)}
.main-nav{margin-left:auto}
.main-nav ul{display:flex;align-items:center;gap:27px;list-style:none;margin:0;padding:0}
.main-nav a{display:inline-flex;align-items:center;min-height:44px;color:#39474d;font-size:.91rem;font-weight:650}
.main-nav a:hover,.main-nav .current-menu-item>a,.main-nav .current_page_item>a{color:var(--brand-dark);text-decoration:none}
.header-search{width:218px;flex:none}
.search-form{display:flex;align-items:stretch;gap:7px}
.search-form label{flex:1;min-width:0}
.search-field{width:100%;height:42px;padding:0 13px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:.87rem}
.search-field:focus{border-color:var(--brand)}
.search-submit{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:0 12px;border:0;background:var(--ink);color:#fff;font-size:.86rem;font-weight:700}
.search-submit:hover{background:var(--brand-dark)}
.menu-toggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--line);background:#fff;color:var(--ink)}
.mobile-search{display:none}
.hero{padding:84px 0 68px;border-bottom:1px solid var(--line);background:linear-gradient(120deg,#f5fbfa 0%,#f8f9f9 60%,#f2f5f4 100%)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(290px,.7fr);gap:64px;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--brand-dark);font-size:.72rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--brand)}
.hero h1{max-width:800px;margin:18px 0 22px;font-size:clamp(2.7rem,5.7vw,5rem);line-height:1.06;letter-spacing:-.065em;font-weight:800}
.hero p{max-width:650px;margin:0;color:#526069;font-size:clamp(1.03rem,1.5vw,1.2rem);line-height:1.75}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:47px;padding:10px 18px;border-radius:10px;font-size:.91rem;font-weight:750;text-decoration:none!important}
.button-primary{background:var(--ink);color:#fff}
.button-primary:hover{background:var(--brand-dark);color:#fff}
.button-secondary{border:1px solid var(--line);background:#fff;color:var(--ink)}
.button-secondary:hover{border-color:var(--brand);color:var(--brand-dark)}
.hero-panel{padding:27px;border:1px solid #d7e9e6;border-radius:var(--radius);background:#fff;box-shadow:0 20px 60px rgba(29,65,64,.055)}
.panel-kicker{display:block;margin-bottom:14px;color:var(--muted);font-size:.73rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.hero-panel h2{margin:0 0 13px;font-size:1.45rem;line-height:1.2;letter-spacing:-.035em}
.hero-panel p{font-size:.91rem;line-height:1.65}
.topic-list{display:flex;flex-wrap:wrap;gap:8px;margin:21px 0 0}
.topic-list a,.pill{display:inline-flex;align-items:center;padding:6px 11px;border:1px solid #d8e8e5;border-radius:999px;background:#f2f8f7;color:#266a6b;font-size:.76rem;font-weight:750}
.topic-list a:hover{background:#def0ec;text-decoration:none}
.section{padding:68px 0}
.section+.section{padding-top:22px}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:27px}
.section-head h2,.page-title{margin:8px 0 0;font-size:clamp(2rem,3.1vw,2.9rem);line-height:1.14;letter-spacing:-.055em}
.section-head p,.archive-intro{max-width:680px;margin:12px 0 0;color:var(--muted)}
.text-link{font-size:.88rem;font-weight:800;white-space:nowrap}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.post-card{display:flex;flex-direction:column;min-width:0;padding:25px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);transition:border-color .2s,transform .2s,box-shadow .2s}
.post-card:hover{transform:translateY(-3px);border-color:#a9ceca;box-shadow:0 14px 40px rgba(16,52,50,.07)}
.post-card .card-category{display:inline-flex;align-self:flex-start;padding:5px 9px;border-radius:6px;background:var(--soft);color:var(--brand-dark);font-size:.7rem;font-weight:800}
.post-card h3{margin:20px 0 10px;font-size:1.23rem;line-height:1.32;letter-spacing:-.035em}
.post-card h3 a{color:var(--ink)}
.post-card h3 a:hover{color:var(--brand-dark);text-decoration:none}
.post-card p{margin:0 0 24px;color:var(--muted);font-size:.9rem;line-height:1.65}
.card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:17px;border-top:1px solid #edf0f0;color:#78858b;font-size:.75rem;font-weight:650}
.card-footer .read-link{color:var(--brand-dark);font-weight:800}
.note-band{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 30px;border:1px solid #cce4df;border-radius:var(--radius);background:#edf7f4}
.note-band h2{margin:3px 0 5px;font-size:1.32rem;letter-spacing:-.03em}
.note-band p{margin:0;color:#58706c;font-size:.91rem}
.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:52px;align-items:start}
.archive-header{padding:57px 0 29px}
.archive-header .page-title{max-width:800px}
.listing{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.sidebar{position:sticky;top:110px}
.widget{margin:0 0 16px;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}
.widget-title,.widget h2,.widget h3{margin:0 0 15px;font-size:1rem;line-height:1.25;letter-spacing:-.02em}
.widget ul{margin:0;padding:0;list-style:none}
.widget li{padding:8px 0;border-bottom:1px solid #edf0f0;font-size:.88rem}
.widget li:last-child{padding-bottom:0;border-bottom:0}
.widget ul.children{margin:6px 0 0 13px;padding-left:12px;border-left:1px solid var(--line)}
.widget ul.children li{font-size:.83rem}
.widget a{color:#46555c}
.widget a:hover{color:var(--brand-dark)}
.widget .search-form{display:flex}
.widget .search-field{height:44px}
.widget .search-submit{font-size:.83rem}
.pagination-wrap{margin-top:35px}
.page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:38px;padding:4px 10px;margin:0 4px 6px 0;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-size:.86rem;font-weight:700}
.page-numbers.current,.page-numbers:hover{border-color:var(--brand-dark);background:var(--brand-dark);color:#fff;text-decoration:none}
.article-shell{padding:62px 0 85px}
.article-header{max-width:780px;margin:0 auto 31px}
.back-link{font-size:.82rem;font-weight:800}
.article-header h1{margin:17px 0 17px;font-size:clamp(2.45rem,5vw,3.8rem);line-height:1.12;letter-spacing:-.055em}
.article-summary{color:#5d6b72;font-size:1.15rem;line-height:1.72}
.article-meta{display:flex;flex-wrap:wrap;gap:15px;color:#7a868b;font-size:.79rem;font-weight:700}
.article-panel{max-width:830px;margin:auto;padding:clamp(25px,5vw,58px);border:1px solid var(--line);border-radius:var(--radius);background:#fff}
.entry-content{color:#2f3e45;font-size:1.06rem;line-height:1.85;overflow-wrap:anywhere}
.entry-content>:first-child{margin-top:0}
.entry-content h2,.entry-content h3,.entry-content h4{color:var(--ink);line-height:1.3;letter-spacing:-.035em}
.entry-content h2{margin:2em 0 .75em;font-size:1.7rem}
.entry-content h3{margin:1.7em 0 .65em;font-size:1.3rem}
.entry-content p{margin:0 0 1.45em}
.entry-content ul,.entry-content ol{margin:0 0 1.5em;padding-left:1.45em}
.entry-content li{margin:.3em 0}
.entry-content blockquote{margin:2em 0;padding:5px 24px;border-left:4px solid var(--brand);background:#f1f8f6;color:#345c59}
.entry-content pre{position:relative;max-width:100%;margin:1.7em 0;padding:23px;overflow:auto;border-radius:12px;background:#16222b;color:#eaf4f4;font-size:.85rem;line-height:1.6;tab-size:2}
.entry-content code:not(pre code){padding:2px 5px;border-radius:4px;background:#edf3f2;color:#006c70;font-size:.88em}
.entry-content pre code{color:inherit;background:none}
.copy-code{position:absolute;top:9px;right:9px;padding:4px 9px;border:1px solid #5e7679;background:#28383d;color:#fff;font-size:.7rem}
.entry-content img{border-radius:10px}
.entry-content table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}
.entry-content td,.entry-content th{padding:8px 12px;border:1px solid var(--line)}
.entry-content iframe{max-width:100%}
.article-tax{display:flex;flex-wrap:wrap;gap:8px;margin-top:34px;padding-top:23px;border-top:1px solid var(--line)}
.article-tax a{padding:5px 10px;border-radius:6px;background:#f0f5f4;font-size:.75rem;font-weight:700}
.post-navigation{display:flex;justify-content:space-between;gap:20px;max-width:830px;margin:25px auto 0;font-size:.85rem;font-weight:750}
.page-shell{padding:60px 0 85px}
.page-shell .article-panel{max-width:920px}
.page-shell .page-title{max-width:920px;margin:0 auto 26px}
.empty-state{padding:38px;border:1px dashed #c6d5d3;border-radius:var(--radius);background:#fff}
.empty-state h2{margin:0 0 8px}
.empty-state p{margin:0 0 20px;color:var(--muted)}
.site-footer{margin-top:45px;border-top:1px solid var(--line);background:#fff}
.footer-main{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:70px;padding:55px 0 42px}
.footer-brand img{width:150px;max-height:60px;object-fit:contain;object-position:left}
.footer-brand p{max-width:310px;margin:16px 0;color:var(--muted);font-size:.87rem}
.footer-title{margin:0 0 15px;font-size:.89rem;font-weight:850}
.footer-list{margin:0;padding:0;list-style:none}
.footer-list li{margin:0 0 9px;font-size:.87rem}
.footer-list a{color:#56646a}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-top:1px solid var(--line);color:#829096;font-size:.76rem}
.footer-widget .widget{padding:0;margin:0;border:0;background:none}
.footer-widget .widget li{border:0;padding:0;margin:0 0 9px}
.footer-widget .widget-title{font-size:.89rem}
body .gform_wrapper .gfield input[type="text"],body .gform_wrapper .gfield input[type="email"],body .gform_wrapper .gfield input[type="tel"],body .gform_wrapper .gfield textarea{min-height:46px;padding:11px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);box-shadow:none}
body .gform_wrapper .gfield textarea{min-height:160px}
body .gform_wrapper .gfield input:focus,body .gform_wrapper .gfield textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(8,126,131,.12);outline:0}
body .gform_wrapper .gfield_label{color:var(--ink);font-size:.88rem;font-weight:750}
body .gform_wrapper .gform_button{min-height:46px;padding:10px 21px;border:0;border-radius:10px;background:var(--ink);color:#fff;font-size:.91rem;font-weight:750;box-shadow:none}
body .gform_wrapper .gform_button:hover{background:var(--brand-dark)}
body #chaty-widget-_1,body .chaty-widget,body .chaty{display:none!important}
@media(max-width:1050px){.header-search{width:165px}.main-nav ul{gap:16px}.hero-grid{gap:35px}.content-layout{gap:28px}}
@media(max-width:800px){body.admin-bar .site-header{top:46px}.container{width:min(calc(100% - 36px),var(--wrap))}.header-inner{min-height:70px;gap:12px}.brand{min-width:0;margin-right:auto}.brand img{width:132px}.menu-toggle{display:inline-flex;order:3}.header-search{width:180px}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;margin:0;padding:14px 18px 20px;border-bottom:1px solid var(--line);background:#fff;box-shadow:0 20px 30px rgba(20,40,40,.08)}.main-nav.is-open{display:block}.main-nav ul{display:block}.main-nav a{width:100%;padding:0 10px}.mobile-search{display:block;margin-top:10px}.hero{padding:62px 0}.hero-grid{grid-template-columns:1fr}.hero-panel{max-width:650px}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-layout{grid-template-columns:1fr}.sidebar{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.widget{margin:0}.footer-main{gap:30px}}
@media(max-width:600px){.container{width:min(calc(100% - 32px),var(--wrap))}.header-search{display:none}.hero{padding:50px 0}.hero h1{font-size:clamp(2.5rem,11vw,3.6rem)}.hero-panel{padding:22px}.section{padding:50px 0}.section-head{align-items:start}.card-grid,.listing,.sidebar{grid-template-columns:1fr}.post-card{padding:22px}.content-layout{gap:28px}.archive-header{padding:42px 0 23px}.article-shell,.page-shell{padding:42px 0 55px}.article-header h1{font-size:clamp(2.3rem,10vw,3.4rem)}.article-panel{padding:22px;border-radius:14px}.entry-content{font-size:1rem}.note-band{align-items:start;flex-direction:column;padding:22px}.footer-main{grid-template-columns:1fr 1fr;gap:28px;padding:42px 0 26px}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:5px}.post-navigation{flex-direction:column}}
