:root {
  --tom-forest: #163d34;
  --tom-forest-deep: #0d2b25;
  --tom-sage: #6f8377;
  --tom-paper: #f4f1e8;
  --tom-card: #fffdf7;
  --tom-yellow: #ffd000;
  --tom-line: #cbd2c8;
  --tom-muted: #66736d;
  --tom-shadow: 0 22px 56px rgba(13, 43, 37, .10);
}

html { scroll-behavior: smooth; }
body {
  background:
    linear-gradient(rgba(22,61,52,.032) 1px, transparent 1px),
    linear-gradient(90deg, rgba(22,61,52,.032) 1px, transparent 1px),
    var(--tom-paper);
  background-size: 32px 32px;
  color: var(--tom-forest-deep);
}
body::before { content:""; position:fixed; inset:0 auto 0 0; width:8px; background:repeating-linear-gradient(to bottom,var(--tom-forest) 0 1px,transparent 1px 16px); opacity:.2; pointer-events:none; z-index:50; }
.topline { background:var(--tom-forest-deep); color:#f7f2e7; border:0; }
.status-dot { background:var(--tom-yellow); box-shadow:0 0 0 4px rgba(255,208,0,.12); }
.header { background:rgba(255,253,247,.95); border-bottom:1px solid var(--tom-line); backdrop-filter:blur(16px); }
.brand img { filter:saturate(.88) contrast(1.03); }
.brand-dot { color:var(--tom-yellow); }
.main-nav a,.portal-nav a { position:relative; }
.main-nav a::after,.portal-nav a::after { content:""; position:absolute; left:0; right:100%; bottom:-10px; height:3px; background:var(--tom-yellow); transition:right .2s ease; }
.main-nav a:hover::after,.main-nav a:focus-visible::after,.portal-nav a:hover::after,.portal-nav a:focus-visible::after,.portal-nav a.active::after { right:0; }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline:3px solid var(--tom-yellow); outline-offset:3px; }

/* Ana sayfa: Bilgi Merkezi ile aynı teknik yayın dili. */
.hero { padding-top:clamp(3.5rem,8vw,7rem); }
.hero::before { content:"01 / ANA İSTASYON"; position:absolute; top:1.3rem; left:max(1.25rem,calc((100vw - 1180px)/2)); color:var(--tom-sage); font:700 .69rem/1 Manrope,sans-serif; letter-spacing:.16em; }
.hero h1,.section-heading h2 { color:var(--tom-forest-deep); }
.hero .highlight { color:var(--tom-forest); }
.hero .highlight::after { background:var(--tom-yellow); }
.button-yellow,.small-button { background:var(--tom-yellow); color:var(--tom-forest-deep); border-radius:0; box-shadow:5px 5px 0 var(--tom-forest); }
.button-yellow:hover,.small-button:hover { transform:translate(-2px,-2px); box-shadow:7px 7px 0 var(--tom-forest); }
.photo-frame { border-radius:0; box-shadow:14px 14px 0 rgba(22,61,52,.12); }
.photo-label { border-radius:0; }
.photo-caption { background:linear-gradient(90deg,rgba(13,43,37,.96),rgba(13,43,37,.78)); }
.drawing-caption { border-top:1px solid var(--tom-line); padding-top:.85rem; }
.entry-strip { border:1px solid var(--tom-line); background:var(--tom-card); box-shadow:var(--tom-shadow); }
.entry-strip>a { border-radius:0; }
.entry-strip>a:hover { background:#edf0e8; }
.entry-icon { color:var(--tom-forest); }
.library { position:relative; }
.library::before { content:"02 / YAYIN KÜTÜPHANESİ"; display:block; margin-bottom:1.1rem; color:var(--tom-sage); font:700 .69rem/1 Manrope,sans-serif; letter-spacing:.16em; }
.library-toolbar { border:1px solid var(--tom-line); background:var(--tom-card); padding:12px; }
.filter { border-radius:0; }
.filter.active { background:var(--tom-forest); color:#fff; }
.filter.active .count { background:var(--tom-yellow); color:var(--tom-forest-deep); }
.search-box { border-radius:0; border-color:var(--tom-line); background:var(--tom-paper); }
.article-card { border-radius:0; border:1px solid var(--tom-line); background:var(--tom-card); box-shadow:8px 8px 0 rgba(22,61,52,.07); }
.article-card:hover { transform:translateY(-5px); box-shadow:12px 14px 0 rgba(22,61,52,.10); }
.article-visual { border-radius:0; }
.article-meta span:first-child { color:var(--tom-forest); }

/* Portal kabuğu. */
.portal-main { padding-top:clamp(2.2rem,5vw,4.8rem); padding-bottom:6rem; }
.portal-footer { background:var(--tom-forest-deep); color:#eef1ea; border-top:6px solid var(--tom-yellow); }
.page-head { position:relative; overflow:hidden; background:var(--tom-forest); color:white; border:0; border-radius:0; padding:clamp(2.2rem,6vw,5.4rem); margin-bottom:2rem; box-shadow:var(--tom-shadow); }
.page-head::after { content:""; position:absolute; inset:0 0 0 55%; background:repeating-linear-gradient(90deg,transparent 0 31px,rgba(255,255,255,.08) 31px 32px),repeating-linear-gradient(0deg,transparent 0 31px,rgba(255,255,255,.08) 31px 32px); transform:skewX(-10deg) scale(1.2); pointer-events:none; }
.page-head .eyebrow,.page-head p { color:#dce7df; }
.page-head h1 { max-width:900px; color:white; font-family:"Barlow Condensed",sans-serif; font-size:clamp(3rem,8vw,6.5rem); line-height:.9; text-transform:uppercase; letter-spacing:-.025em; }
.page-head h1::after { content:"."; color:var(--tom-yellow); }
.portal-layout,.article-layout { align-items:start; }
.panel-card,.side-card,.topic-row,.job-row,.article-aside { border:1px solid var(--tom-line); border-radius:0; background:var(--tom-card); box-shadow:7px 7px 0 rgba(22,61,52,.06); }
.side-card { border-top:6px solid var(--tom-yellow); }
.topic-row,.job-row { transition:transform .18s ease,box-shadow .18s ease; }
.topic-row:hover,.job-row:hover { transform:translateX(5px); box-shadow:10px 7px 0 rgba(22,61,52,.09); }
.tag { border-radius:0; }

/* Bağımsız makale kütüphanesi. */
.publication-hero { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr); min-height:420px; margin-bottom:1.5rem; background:var(--tom-forest); color:#fff; box-shadow:var(--tom-shadow); }
.publication-hero__copy { padding:clamp(2.2rem,6vw,5.6rem); align-self:end; }
.publication-kicker { display:flex; align-items:center; gap:12px; margin:0 0 1rem; color:#dfe9e2; font-size:.72rem; font-weight:800; letter-spacing:.17em; }
.publication-kicker::before { content:""; width:34px; height:4px; background:var(--tom-yellow); }
.publication-hero h1 { margin:0; font-family:"Barlow Condensed",sans-serif; font-size:clamp(3.7rem,9vw,7.8rem); line-height:.82; letter-spacing:-.035em; text-transform:uppercase; }
.publication-hero h1 span { color:var(--tom-yellow); }
.publication-hero__copy>p:last-child { max-width:680px; margin:1.6rem 0 0; color:#d4dfd8; font-size:1.04rem; line-height:1.75; }
.publication-hero__drawing { position:relative; min-height:320px; overflow:hidden; background:var(--tom-forest-deep); }
.publication-hero__drawing::before { content:""; position:absolute; inset:9%; background:linear-gradient(28deg,transparent 0 34%,var(--tom-yellow) 34.2% 34.8%,transparent 35% 100%),linear-gradient(-32deg,transparent 0 54%,rgba(255,255,255,.5) 54.2% 54.8%,transparent 55% 100%),repeating-linear-gradient(90deg,transparent 0 39px,rgba(255,255,255,.09) 39px 40px),repeating-linear-gradient(0deg,transparent 0 39px,rgba(255,255,255,.09) 39px 40px); border:1px solid rgba(255,255,255,.18); }
.publication-hero__drawing::after { content:"PLANLA  /  ÖLÇ  /  GELİŞTİR"; position:absolute; right:2rem; bottom:2rem; color:var(--tom-yellow); font:800 .68rem/1 Manrope,sans-serif; letter-spacing:.18em; writing-mode:vertical-rl; }
.publication-shell { display:grid; grid-template-columns:270px minmax(0,1fr); gap:1.4rem; }
.publication-rail { position:sticky; top:110px; align-self:start; background:var(--tom-forest-deep); color:white; padding:1.35rem; }
.publication-rail__label { margin:0 0 1rem; color:#aebdb4; font-size:.68rem; font-weight:800; letter-spacing:.17em; }
.publication-filter { width:100%; display:grid; grid-template-columns:18px 1fr auto; gap:10px; align-items:center; padding:.85rem .55rem; border:0; border-bottom:1px solid rgba(255,255,255,.1); background:transparent; color:#eaf0ec; text-align:left; font:700 .83rem/1.3 Manrope,sans-serif; cursor:pointer; }
.publication-filter::before { content:""; width:8px; height:8px; border:2px solid #70857a; }
.publication-filter span { color:#90a097; font-size:.67rem; }
.publication-filter:hover,.publication-filter.active { color:white; background:rgba(255,255,255,.055); }
.publication-filter.active::before { background:var(--tom-yellow); border-color:var(--tom-yellow); box-shadow:0 0 0 4px rgba(255,208,0,.12); }
.publication-tools { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:1rem; align-items:center; margin-bottom:1rem; padding:1rem; border:1px solid var(--tom-line); background:var(--tom-card); }
.publication-search { display:flex; align-items:center; gap:.75rem; }
.publication-search svg { width:22px; fill:none; stroke:var(--tom-forest); stroke-width:1.8; }
.publication-search input { width:100%; border:0; background:transparent; color:var(--tom-forest-deep); font:700 1rem/1.4 Manrope,sans-serif; }
.publication-search input:focus { outline:0; }
.publication-result { color:var(--tom-muted); font-size:.76rem; font-weight:800; letter-spacing:.09em; white-space:nowrap; }
.publication-feature { display:grid; grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr); min-height:310px; margin-bottom:1.1rem; background:var(--tom-card); border:1px solid var(--tom-line); box-shadow:9px 9px 0 rgba(22,61,52,.08); }
.publication-feature__visual { position:relative; overflow:hidden; background:var(--tom-yellow); padding:1.5rem; color:var(--tom-forest-deep); }
.publication-feature__visual::after { content:""; position:absolute; inset:22% -15% -15% 18%; border:3px solid var(--tom-forest); transform:rotate(-11deg); box-shadow:-35px -35px 0 transparent,-35px -35px 0 2px rgba(22,61,52,.25); }
.publication-feature__number { position:relative; z-index:1; font:700 clamp(5rem,10vw,9rem)/.8 "Barlow Condensed",sans-serif; }
.publication-feature__content { display:flex; flex-direction:column; justify-content:center; padding:clamp(1.7rem,4vw,3.5rem); }
.publication-feature__content h2 { margin:.7rem 0 1rem; font-family:"Barlow Condensed",sans-serif; font-size:clamp(2.2rem,4.5vw,4.1rem); line-height:.95; }
.publication-feature__content p { color:var(--tom-muted); line-height:1.7; }
.publication-link { display:inline-flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:auto; padding-top:1.2rem; border-top:1px solid var(--tom-line); color:var(--tom-forest); font-weight:800; }
.publication-list { display:grid; gap:.85rem; }
.publication-item { display:grid; grid-template-columns:76px 150px minmax(0,1fr) 38px; gap:1.1rem; align-items:center; padding:1.15rem; border:1px solid var(--tom-line); background:var(--tom-card); color:inherit; transition:transform .18s ease,background .18s ease; }
.publication-item:hover { transform:translateX(6px); background:#eef1e9; }
.publication-item__number { color:var(--tom-sage); font:700 2.7rem/1 "Barlow Condensed",sans-serif; }
.publication-item__category { color:var(--tom-forest); font-size:.69rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.publication-item h3 { margin:0 0 .35rem; font-family:"Barlow Condensed",sans-serif; font-size:1.75rem; line-height:1; }
.publication-item p { margin:0; color:var(--tom-muted); font-size:.84rem; line-height:1.5; }
.publication-item__arrow { color:var(--tom-forest); font-size:1.5rem; }
.publication-empty { padding:4rem 1.5rem; border:1px dashed var(--tom-line); background:var(--tom-card); text-align:center; }

/* Makale okuma yüzeyi. */
.breadcrumb { margin-bottom:1.2rem; color:var(--tom-muted); font-size:.75rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.article-layout>article { background:var(--tom-card); border:1px solid var(--tom-line); padding:clamp(1.5rem,5vw,4.5rem); box-shadow:var(--tom-shadow); }
.article-title { font-family:"Barlow Condensed",sans-serif; font-size:clamp(3rem,7vw,6rem); line-height:.9; color:var(--tom-forest-deep); }
.article-lead { border-left:6px solid var(--tom-yellow); padding-left:1.3rem; color:var(--tom-muted); font-size:1.12rem; line-height:1.7; }
.article-diagram { border-radius:0; background-color:var(--tom-forest); }
.article-aside { position:sticky; top:110px; border-top:6px solid var(--tom-yellow); }
.content-prose h2 { font-family:"Barlow Condensed",sans-serif; font-size:2.2rem; color:var(--tom-forest); }

@media (max-width:900px) {
  .publication-hero { grid-template-columns:1fr; }
  .publication-hero__drawing { min-height:190px; }
  .publication-shell { grid-template-columns:1fr; }
  .publication-rail { position:static; display:flex; overflow-x:auto; gap:.35rem; padding:.8rem; }
  .publication-rail__label { display:none; }
  .publication-filter { min-width:max-content; grid-template-columns:14px 1fr auto; border:1px solid rgba(255,255,255,.1); }
  .publication-feature { grid-template-columns:180px 1fr; }
  .publication-item { grid-template-columns:54px 125px minmax(0,1fr) 28px; }
}
@media (max-width:680px) {
  body::before { display:none; }
  .hero::before { left:1.1rem; }
  .page-head { padding:2rem 1.25rem; }
  .page-head h1 { font-size:3.25rem; }
  .publication-hero { min-height:0; }
  .publication-hero__copy { padding:2.2rem 1.25rem; }
  .publication-hero h1 { font-size:4.15rem; }
  .publication-hero__drawing { min-height:145px; }
  .publication-tools { grid-template-columns:1fr; }
  .publication-feature { grid-template-columns:1fr; }
  .publication-feature__visual { min-height:160px; }
  .publication-feature__content h2 { font-size:2.7rem; }
  .publication-item { grid-template-columns:48px minmax(0,1fr) 28px; gap:.75rem; }
  .publication-item__category { grid-column:2; grid-row:1; }
  .publication-item__copy { grid-column:2; grid-row:2; }
  .publication-item__number { grid-row:1/span 2; }
  .publication-item__arrow { grid-column:3; grid-row:1/span 2; }
  .publication-item h3 { font-size:1.5rem; }
  .article-layout>article { padding:1.25rem; }
}
@media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto} *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important} }
