/* ==========================================================
   cansukayalar.com — cyber-grunge / terminal teması
   Eski tasarıma dönmek için: header.html içindeki
   terminal.css bağlantısını style.css ile değiştir.
   Renkler tek yerden: :root
   ========================================================== */
:root{
  --bg:    #000000;
  --line:  #313131;
  --hot:   #5c5c5c;
  --fg:    #f1f1f1;
  --txt:   #c2c2c2;
  --dim:   #939393;
  --mono:  'JetBrains Mono','Source Code Pro',ui-monospace,Menlo,Consolas,monospace;
  --pixel: 'Press Start 2P', var(--mono);
  --lcd:   'Share Tech Mono', var(--mono);
}
*{margin:0;padding:0;box-sizing:border-box;border-radius:0 !important;}
html,body{height:100%;}
body{
  background:var(--bg);color:var(--txt);
  font-family:var(--mono);font-size:13px;line-height:1.7;
  overflow:hidden;-webkit-font-smoothing:none;
}
::selection{background:var(--fg);color:#000;}
::-webkit-scrollbar{width:6px;height:6px;}
::-webkit-scrollbar-track{background:#000;}
::-webkit-scrollbar-thumb{background:var(--hot);}
a{color:var(--fg);}

/* ---------- CRT ---------- */
.crt{position:fixed;inset:0;pointer-events:none;z-index:900;}
.crt.scan{background:repeating-linear-gradient(to bottom,
  rgba(0,0,0,0) 0 2px, rgba(0,0,0,.11) 3px 4px);mix-blend-mode:multiply;}
.crt.noise{opacity:.028;animation:grain .6s steps(5) infinite;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)'/%3E%3C/svg%3E");}
.crt.vig{background:radial-gradient(ellipse at center,transparent 74%,rgba(0,0,0,.33) 100%);}
@keyframes grain{
  0%{transform:translate(0,0)}   25%{transform:translate(-3%,2%)}
  50%{transform:translate(2%,-3%)} 75%{transform:translate(-2%,-1%)}
  100%{transform:translate(0,0)}
}

/* ---------- tiling düzen ---------- */
#wm{
  height:100vh;display:grid;gap:4px;padding:4px;
  grid-template-columns:230px minmax(0,1fr) 260px;
  grid-template-rows:minmax(0,1fr) 162px;
  grid-template-areas:
    "nav  main  side"
    "nav  main  clock";
}
.win{border:1px solid var(--line);display:flex;flex-direction:column;
  min-width:0;min-height:0;transition:border-color .1s linear;}
.win.focus{border-color:var(--hot);}
.win__bar{flex:0 0 auto;display:flex;gap:8px;padding:3px 7px;
  border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--dim);user-select:none;}
.win.focus .win__bar{color:var(--fg);border-bottom-color:var(--hot);}
.win__bar i{font-style:normal;margin-left:auto;opacity:.4;letter-spacing:.2em;}
.win__body{flex:1;min-height:0;overflow:auto;padding:14px;}

/* ---------- sol: kimlik + menü ---------- */
#nav{grid-area:nav;}
#nav .win__body{display:flex;flex-direction:column;}
.name{font-family:var(--pixel);font-size:13px;color:var(--fg);
  line-height:1.7;text-decoration:none;display:block;}
.name small{display:block;font-size:7px;color:var(--dim);
  margin-top:9px;letter-spacing:.1em;line-height:1.7;}
.lang{display:inline-block;align-self:flex-start;margin-top:10px;font-size:10px;color:var(--dim);
  text-decoration:none;letter-spacing:.1em;border:1px solid var(--line);padding:2px 6px;}
.lang:hover{color:var(--fg);border-color:var(--fg);}
.rule{border-top:1px solid var(--line);margin:14px 0;}
.menu{list-style:none;}
.menu li::before{content:none;}
.menu a{display:block;padding:3px 0;color:var(--txt);text-decoration:none;}
.menu a::before{content:"  ";white-space:pre;}
.menu a:hover,.menu a.on{color:var(--fg);}
.menu a:hover::before,.menu a.on::before{content:"› ";color:var(--fg);}
.meta{font-size:10px;color:var(--dim);letter-spacing:.06em;margin-top:auto;padding-top:16px;}
.meta b{color:var(--txt);font-weight:400;}

/* ---------- orta: içerik ---------- */
#main{grid-area:main;}
#main .win__body{padding:26px 30px 60px;}

h1{font-family:var(--pixel);font-weight:400;font-size:15px;color:var(--fg);
  line-height:1.8;margin-bottom:16px;}
h2{font-family:var(--pixel);font-weight:400;font-size:11px;color:var(--fg);
  margin:34px 0 14px;line-height:1.7;}
h3{font-size:13px;color:var(--fg);font-weight:400;margin:0 0 8px;}
.section-title{font-family:var(--pixel);font-weight:400;font-size:11px;
  color:var(--fg);margin:0 0 16px;line-height:1.7;}
.section{margin-bottom:38px;}
.section:first-child{margin-top:0;}
p{margin-bottom:14px;max-width:70ch;}
.muted{color:var(--dim);}
.eyebrow{font-size:10px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--dim);margin-bottom:10px;}
.lead{color:var(--txt);}
.lead strong,p strong{color:var(--fg);font-weight:400;}
ul{list-style:none;margin-bottom:14px;}
ul li{margin-bottom:6px;max-width:70ch;}
ul li::before{content:"— ";color:var(--dim);}
ol{margin:0 0 14px 20px;}

/* hero */
.hero{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:26px;
  align-items:start;margin-bottom:38px;}
.hero-card{border:1px solid var(--line);padding:12px;}
.profile-container{display:flex;flex-direction:column;gap:10px;}
.profile-img{width:100%;display:block;image-rendering:pixelated;
  filter:grayscale(1) contrast(1.15) brightness(1.05);}
.hero-meta{border-top:1px solid var(--line);margin-top:10px;padding-top:8px;}
.meta-row{display:flex;justify-content:space-between;gap:10px;
  font-size:11px;padding:2px 0;color:var(--txt);}
.meta-label{color:var(--dim);}
.cta-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;}
.btn{display:inline-block;border:1px solid var(--hot);padding:6px 12px;
  color:var(--fg);text-decoration:none;font-size:11px;letter-spacing:.08em;}
.btn:hover{background:var(--fg);color:#000;border-color:var(--fg);}
.btn-secondary{border-color:var(--line);color:var(--txt);}
.btn-secondary:hover{background:var(--fg);color:#000;border-color:var(--fg);}

/* iki kolon */
.two-col{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:30px;}

/* etiket ızgarası */
.pill-grid{display:flex;flex-wrap:wrap;gap:6px;}
.pill{font-size:10px;border:1px solid var(--line);padding:3px 8px;color:var(--txt);}
.pill:hover{border-color:var(--fg);color:var(--fg);}

/* yazı listesi */
.post-list{border-top:1px solid var(--line);max-width:74ch;}
.post-item{border-bottom:1px solid var(--line);padding:12px 4px;}
.post-item:hover{background:rgba(210,210,210,.03);}
.post-date{color:var(--dim);font-size:11px;letter-spacing:.08em;}
.post-item h3{margin:5px 0 4px;}
.post-item h3 a{color:var(--fg);text-decoration:none;}
.post-summary{color:var(--txt);font-size:12px;margin:0;}

/* proje / sertifika */
.project-grid,.certificate-grid{display:grid;
  grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:4px;}
.project-item,.certificate-card{border:1px solid var(--line);padding:14px;}
.project-item:hover,.certificate-card:hover{border-color:var(--hot);}
.project-title{color:var(--fg);display:block;margin-bottom:6px;}
.project-link{font-size:10px;color:var(--dim);text-decoration:none;
  letter-spacing:.08em;border-bottom:1px solid var(--line);}
.project-link:hover{color:var(--fg);border-bottom-color:var(--fg);}
.project-desc{font-size:12px;color:var(--txt);margin:8px 0 0;}
.certificate-card h3{margin-bottom:4px;}
.cert-org{font-size:10px;color:var(--dim);letter-spacing:.1em;
  text-transform:uppercase;margin:0 0 8px;}
.certificate-card p:last-child{font-size:12px;color:var(--txt);margin:0;}

/* bağlantı kartları */
.link-grid{display:flex;flex-wrap:wrap;gap:4px;}
.link-card{border:1px solid var(--line);padding:8px 14px;color:var(--txt);
  text-decoration:none;font-size:11px;letter-spacing:.08em;}
.link-card:hover{border-color:var(--fg);color:var(--fg);}

/* iletişim formu */
.content-row{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:4px;align-items:start;}
.col-side{border:1px solid var(--line);padding:16px;}
.col-side h3{margin-bottom:12px;}
.col-side p{font-size:12px;margin-bottom:12px;}
.col-side a{color:var(--txt);text-decoration:none;border-bottom:1px solid var(--line);}
.col-side a:hover{color:var(--fg);border-bottom-color:var(--fg);}
.form{display:flex;flex-direction:column;gap:14px;margin-top:18px;max-width:52ch;}
.form label{display:block;margin-bottom:5px;font-size:10px;
  letter-spacing:.16em;text-transform:uppercase;color:var(--dim);}
.form input,.form textarea{width:100%;padding:9px 10px;background:#080808;
  border:1px solid var(--line);color:var(--fg);font-family:inherit;font-size:12px;}
.form input:focus,.form textarea:focus{outline:none;border-color:var(--fg);}
.form textarea{resize:vertical;}
.form button{align-self:flex-start;padding:8px 18px;background:transparent;
  border:1px solid var(--hot);color:var(--fg);font-family:inherit;
  font-size:11px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;}
.form button:hover{background:var(--fg);color:#000;border-color:var(--fg);}

/* ---------- makale (markdown gövdesi) ---------- */
.post-head{margin-bottom:26px;}
.post-head .sub{font-size:10px;color:var(--dim);letter-spacing:.12em;}
.backlink{display:inline-block;margin-bottom:20px;font-size:11px;
  color:var(--dim);text-decoration:none;letter-spacing:.08em;}
.backlink:hover{color:var(--fg);}
.markdown-body{max-width:74ch;font-size:13px;line-height:1.75;}
.markdown-body h1,.markdown-body h2{font-family:var(--pixel);font-weight:400;
  font-size:11px;color:var(--fg);margin:32px 0 14px;line-height:1.7;}
.markdown-body h2::before{content:"// ";color:var(--dim);}
.markdown-body h3{font-size:13px;color:var(--fg);margin:24px 0 8px;}
.markdown-body p{margin:0 0 15px;}
.markdown-body a{color:var(--fg);text-decoration:none;border-bottom:1px solid var(--hot);}
.markdown-body a:hover{background:var(--fg);color:#000;}
.markdown-body strong{color:var(--fg);font-weight:400;}
.markdown-body em{color:var(--fg);font-style:italic;}
.markdown-body ul,.markdown-body ol{margin:0 0 15px;padding-left:0;}
.markdown-body ol{padding-left:20px;}
.markdown-body li{margin-bottom:5px;}
.markdown-body blockquote{border-left:1px solid var(--hot);
  padding:2px 0 2px 16px;margin:0 0 15px;color:var(--fg);}
.markdown-body hr{border:none;border-top:1px solid var(--line);margin:28px 0;}
.markdown-body img{max-width:100%;display:block;margin:0 0 8px;
  filter:grayscale(1) contrast(1.6) brightness(.9);}
.markdown-body table{border-collapse:collapse;margin:0 0 16px;font-size:12px;
  display:block;overflow-x:auto;}
.markdown-body th,.markdown-body td{border:1px solid var(--line);padding:6px 10px;text-align:left;}
.markdown-body th{color:var(--fg);font-weight:400;}
.markdown-body code{background:#0c0c0c;border:1px solid var(--line);
  padding:1px 4px;font-size:12px;color:var(--fg);}
.markdown-body pre{background:#080808;border:1px solid var(--line);
  padding:12px 14px;margin:0 0 18px;overflow-x:auto;font-size:12px;line-height:1.55;}
.markdown-body pre code{background:none;border:none;padding:0;color:var(--txt);}

/* highlight.js — tek renk (gri) şema */
.hljs{background:transparent;color:var(--txt);}
.hljs-comment,.hljs-quote{color:var(--dim);font-style:italic;}
.hljs-keyword,.hljs-selector-tag,.hljs-built_in,.hljs-name,.hljs-tag{color:var(--fg);}
.hljs-string,.hljs-title,.hljs-section,.hljs-attribute,.hljs-literal,
.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-addition{color:#aeaeae;}
.hljs-number,.hljs-symbol,.hljs-bullet,.hljs-link,.hljs-meta,
.hljs-selector-id,.hljs-selector-class{color:#9a9a9a;}
.hljs-emphasis{font-style:italic;}
.hljs-strong{color:var(--fg);}

/* ---------- sağ üst: yan panel ---------- */
#side{grid-area:side;}
#side .win__body{font-size:11px;}
.stitle{font-size:10px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--dim);margin:0 0 8px;}
.srow{display:flex;justify-content:space-between;gap:10px;padding:3px 0;color:var(--dim);}
.srow b{color:var(--txt);font-weight:400;text-align:right;}
.srow a{color:var(--txt);text-decoration:none;}
.srow a:hover{color:var(--fg);}
.side-links{display:flex;flex-direction:column;gap:3px;margin-top:4px;}
.side-links a{color:var(--txt);text-decoration:none;font-size:11px;}
.side-links a::before{content:"› ";color:var(--dim);}
.side-links a:hover{color:var(--fg);}
.frame{position:relative;aspect-ratio:16/9;overflow:hidden;background:#080808;margin-top:14px;}
.frame img{width:100%;height:100%;object-fit:cover;display:block;
  image-rendering:pixelated;filter:grayscale(1) contrast(1.15) brightness(1.05);}
.frame::after{content:"";position:absolute;inset:-40%;pointer-events:none;opacity:.3;
  mix-blend-mode:overlay;animation:grain .45s steps(5) infinite;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='5' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23g)'/%3E%3C/svg%3E");}
.cap{border-top:1px solid var(--line);padding-top:5px;margin-top:5px;
  font-size:10px;color:var(--dim);letter-spacing:.06em;}

/* ---------- sağ alt: casio ---------- */
#clock{grid-area:clock;}
#clock .win__body{padding:10px;display:flex;align-items:center;}
.casio{width:100%;border:1px solid var(--hot);background:#0a0a0a;
  padding:10px 12px 7px;position:relative;}
.casio::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(120deg,rgba(255,255,255,.045),transparent 40%);}
.casio .top{display:flex;justify-content:space-between;font-size:8px;
  letter-spacing:.22em;color:var(--dim);margin-bottom:7px;}
.casio .top b{font-family:var(--pixel);font-size:8px;color:var(--txt);letter-spacing:.06em;}
.lcd{font-family:var(--lcd);color:var(--fg);}
.lcd .days{display:flex;gap:5px;font-size:8px;color:var(--dim);
  border-bottom:1px solid rgba(210,210,210,.12);padding-bottom:4px;margin-bottom:5px;}
.lcd .days i{font-style:normal;opacity:.25;}
.lcd .days i.on{opacity:1;color:var(--fg);}
.lcd .days span{margin-left:auto;letter-spacing:.1em;}
.big{position:relative;display:flex;align-items:baseline;justify-content:center;
  gap:2px;font-size:38px;line-height:1;}
.big .ghost{position:absolute;inset:0;display:flex;align-items:baseline;
  justify-content:center;gap:2px;opacity:.08;pointer-events:none;user-select:none;}
.big>span:not(.ghost){position:relative;}
.big .sec{font-size:17px;margin-left:5px;}
.big .sep.off{opacity:.1;}
.lcd .bot{display:flex;justify-content:space-between;font-size:8px;
  letter-spacing:.16em;color:var(--dim);margin-top:4px;}

/* ---------- glitch ---------- */
.g{position:relative;display:inline-block;}
.g::before,.g::after{content:attr(data-text);position:absolute;left:0;top:0;
  width:100%;overflow:hidden;opacity:0;pointer-events:none;color:var(--fg);}
.g:hover{animation:shake .2s steps(2) infinite;}
.g:hover::before{opacity:.55;animation:ga .2s steps(2) infinite;}
.g:hover::after{opacity:.4;animation:gb .24s steps(2) infinite;}
.post-item:hover .g::before{opacity:.55;animation:ga .2s steps(2) infinite;}
.post-item:hover .g::after{opacity:.4;animation:gb .24s steps(2) infinite;}
@keyframes shake{0%{transform:translate(0)}50%{transform:translate(-1px,1px)}100%{transform:translate(0)}}
@keyframes ga{0%{transform:translate(-2px,0);clip-path:inset(0 0 60% 0)}
  100%{transform:translate(2px,-1px);clip-path:inset(55% 0 15% 0)}}
@keyframes gb{0%{transform:translate(2px,1px);clip-path:inset(70% 0 0 0)}
  100%{transform:translate(-2px,0);clip-path:inset(15% 0 55% 0)}}

/* ---------- responsive ---------- */
@media (max-width:1000px){
  body{overflow:auto;}
  #wm{height:auto;min-height:100vh;align-content:start;
    grid-template-columns:1fr;grid-template-rows:auto;
    grid-template-areas:"nav" "main" "side" "clock";}
  #main .win__body{padding:20px 16px 40px;}
  .hero{grid-template-columns:1fr;}
  .hero-card{max-width:280px;}
  .content-row{grid-template-columns:1fr;}
  .meta{margin-top:12px;padding-top:10px;}
  #nav .win__body{padding:12px 14px;}
  .name{font-size:11px;line-height:1.6;}
  .name small{margin-top:6px;}
  .rule{margin:10px 0;}
  .menu{display:flex;flex-wrap:wrap;gap:2px 16px;}
  .menu a{padding:2px 0;}
}
@media (prefers-reduced-motion:reduce){*{animation:none !important;}}

/* ---------- offline.exe — dinozor oyunu (sol panel) ---------- */
.game{margin-top:14px;border:1px solid var(--line);user-select:none;}
.game.armed{border-color:var(--hot);}
.game__bar{display:flex;justify-content:space-between;gap:8px;
  font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);
  padding:2px 5px;border-bottom:1px solid var(--line);}
.game.armed .game__bar{color:var(--txt);}
.game__bar b{font-weight:400;color:var(--txt);}
.game canvas{display:block;width:100%;height:auto;background:#050505;
  image-rendering:pixelated;cursor:pointer;}
.game canvas:focus{outline:none;}
.game__hint{font-size:9px;letter-spacing:.06em;color:var(--dim);
  padding:3px 5px;border-top:1px solid var(--line);}
@media (max-width:1000px){
  .game{max-width:320px;}
}
