/* takvim sayfası — bugünkü takvim.html ölçüleri: arama + simgeler tek şerit (ortak alt çizgi), tek satır hafta şeridi
   (rakam + en çok 3 renkli nokta), ay paneli (sol sütunda ay adı + hafta no), gün çipi; liste sitenin ortak grup dilinde. */
.tk-ust { display: flex; align-items: center; gap: 4px; margin-bottom: 8px; border-bottom: 1px solid var(--bb-border); }
.tk-ara { flex: 1; min-width: 0; position: relative; }
.tk-ara input { width: 100%; border: 0; background: transparent; padding-right: 120px; }
.tk-ara input:focus { box-shadow: none; }
.tk-donem { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); color: var(--bb-text-faint); font: 11px var(--bb-font-mono); pointer-events: none; transition: opacity .15s; }
.tk.aramada .tk-donem, .tk-ara:focus-within .tk-donem { opacity: 0; }
.tk-simge { width: 32px; height: 32px; padding: 0; display: grid; place-items: center; background: none; border: 0; color: var(--bb-text-dim); }
.tk-simge:hover, .tk-simge.acik { color: var(--bb-gold); background: none; }

.tk-bant { display: flex; align-items: stretch; gap: 2px; margin-bottom: 10px; padding-bottom: 4px; border-bottom: 1px solid var(--bb-border); }
.tk-yon { flex: none; width: 28px; padding: 0; background: none; border: 0; color: var(--bb-text-dim); font-size: 18px; }
.tk-yon:hover { color: var(--bb-gold); background: none; }
.tk-orta { flex: 1; min-width: 0; }
.tk-bant[data-mod="hafta"] .tk-ay, .tk-bant[data-mod="ay"] .tk-serit { display: none; }
.tk-serit { display: grid; grid-template-columns: repeat(7, 1fr); gap: 1px; }
.tk-gun { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; min-height: 36px; padding: 2px 0 3px;
          background: none; border: 0; border-radius: 6px; color: inherit; }
.tk-gun:hover { background: var(--bb-surface-3); }
.tk-rakam { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; color: var(--bb-text-muted); font: 12px var(--bb-font-mono); line-height: 1; }
.tk-gun.bugun .tk-rakam { color: var(--bb-gold); box-shadow: inset 0 0 0 1px rgba(var(--bb-gold-rgb), .45); }
.tk-gun.secili .tk-rakam { background: var(--bb-gold); color: var(--bb-on-gold); box-shadow: none; }
.tk-noktalar { display: flex; justify-content: center; gap: 2px; min-height: 4px; }
.tk-nokta { width: 4px; height: 4px; border-radius: 50%; background: var(--renk); }

.tk-ay-bas, .tk-ay-satir { display: grid; grid-template-columns: 38px repeat(7, 1fr); gap: 1px; align-items: center; }
.tk-ay-bas span { color: var(--bb-text-faint); font: 10px var(--bb-font-mono); text-align: center; padding-bottom: 3px; text-transform: uppercase; }
.tk-ay-bas .tk-ay-ad { color: var(--bb-text-muted); text-transform: none; }
.tk-hno { color: var(--bb-text-faint); font: 10px var(--bb-font-mono); text-align: center; }
.tk-ay .tk-gun { min-height: 34px; }

.tk-cip:empty { display: none; }
.tk-gun-cip { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 10px; padding: 4px 9px; border: 1px solid var(--bb-border-2); border-radius: 6px;
              color: var(--bb-gold); font: 12px var(--bb-font-mono); }
.tk-gun-cip b { color: var(--bb-text-muted); font-weight: 400; }
.tk-gun-cip button { padding: 0; background: none; border: 0; color: var(--bb-text-dim); font: inherit; }
.tk-gun-cip button:hover { color: var(--bb-bad); background: none; }

.tk .bb-gruplar.tk-kapali .tk-fazla { display: none; }
.tk-tumu { margin: 10px 0 0; }
.tk-tumu button { width: 100%; padding: 7px 10px; background: transparent; color: var(--bb-text-dim); border: 1px solid var(--bb-border-2); border-radius: 6px; font: 500 12px var(--bb-font-mono); }
.tk-tumu button:hover { color: var(--bb-gold); border-color: var(--bb-gold); background: transparent; }
.tk-bos-liste { margin: 8px 0; }

/* satır: "> ▍başlık  2-1   yarın 19:00   14 eki · 19:00" */
.tk-satir { display: flex; align-items: center; gap: 7px; min-height: 34px; padding: 4px; color: var(--bb-text); }
.tk-satir .on { flex: none; width: 10px; color: var(--bb-text-faint); font: 12px var(--bb-font-mono); }
.tk-cubuk { flex: none; width: 2px; height: 13px; border-radius: 1px; background: var(--renk); opacity: .85; }
.tk-satir .ad { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .95em; }
.tk-skor { flex: none; color: var(--bb-gold); font: 12px var(--bb-font-mono); }
.tk-ne { flex: none; color: var(--bb-text-dim); font: 11px var(--bb-font-mono); white-space: nowrap; }
.tk-tarih { flex: none; min-width: 52px; color: var(--bb-text-faint); font: 11px var(--bb-font-mono); white-space: nowrap; text-align: right; }

.tk-pencere { width: min(460px, calc(100vw - 32px)); max-height: 86vh; padding: 0; border: 1px solid var(--bb-border-2); border-radius: 12px;
              background: var(--bb-surface-3); color: var(--bb-text); box-shadow: var(--bb-shadow-pop); }
.tk-pencere::backdrop { background: var(--bb-scrim); }
.tk-pencere-ic { padding: 18px 18px 14px; }
.tk-pencere header { position: relative; margin-bottom: 8px; padding-right: 40px; }
.tk-pencere h2 { margin: 0; color: var(--renk, var(--bb-gold)); font: 600 15px var(--bb-font-mono); }
.tk-pencere-alt { margin: 2px 0 0; font-size: 12px; }
.tk-kapat { position: absolute; top: -4px; right: -4px; min-width: 34px; font-size: 16px; }
.tk-madde { padding: 9px 0; border-top: 1px solid var(--bb-border); }
.tk-madde-baslik { display: flex; align-items: center; gap: 8px; margin: 0; color: var(--bb-text-strong); }
.tk-madde-alt { margin: 3px 0 0 10px; color: var(--bb-text-faint); font: 11px var(--bb-font-mono); }
@media (max-width: 600px) {
  .tk-tarih { display: none; }
  .tk-satir { min-height: 40px; }
  .tk-fav { width: 34px; height: 34px; }
  .tk-pencere { width: calc(100vw - 20px); }
}

/* favori: satır sonunda ☆/★ (giriş yapmışa); geçmiş satır sönük */
.tk-fav { flex: none; width: 26px; height: 26px; margin-left: -2px; padding: 0; background: none; border: 0; border-radius: 6px; color: var(--bb-text-faint); font-size: 14px; line-height: 1; }
.tk-fav:hover, .tk-fav:focus-visible { color: var(--bb-gold); background: none; }
.tk-fav[aria-pressed="true"] { color: var(--bb-gold); }
.tk-fav.hata { color: var(--bb-bad); }
.tk-satir.gecmis .ad, .tk-satir.gecmis .tk-ne { color: var(--bb-text-faint); }

/* ── spor (5C-3): pencere sekmeleri, puan tablosu, F1, hafta tahmini ── */
.tk-sekmeler, .tk-alt-sekme { display: flex; gap: 6px; margin: 0 0 8px; }
.tk-sekmeler[hidden] { display: none; }
.tk-sekmeler button[hidden] { display: none; }
.tk-sekmeler button, .tk-alt-sekme button { padding: 4px 10px; background: transparent; border: 1px solid var(--bb-border-2); border-radius: 6px;
  color: var(--bb-text-dim); font: 12px var(--bb-font-mono); }
.tk-alt-sekme button { flex: 1; }
.tk-sekmeler button:hover, .tk-alt-sekme button:hover { color: var(--bb-gold); background: transparent; }
.tk-sekmeler button[aria-pressed="true"], .tk-alt-sekme button[aria-pressed="true"] { color: var(--bb-gold); border-color: var(--bb-gold); background: rgba(var(--bb-gold-rgb), .08); }

.tk-tablo { width: 100%; border-collapse: collapse; border-top: 1px solid var(--bb-border); font: 12px var(--bb-font-mono); font-variant-numeric: tabular-nums; }
.tk-tablo th, .tk-tablo td { padding: 5px 4px; text-align: center; border-bottom: 1px solid var(--bb-border); }
.tk-tablo th { color: var(--bb-text-faint); font-weight: 400; font-size: 11px; }
.tk-tablo .tk-takim { text-align: left; max-width: 150px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--bb-text-strong); font-family: var(--bb-font-sans); }
.tk-tablo .tk-sira { position: relative; width: 34px; padding-left: 9px; color: var(--bb-text-dim); text-align: left; white-space: nowrap; }
.tk-tablo .tk-p { color: var(--bb-text-bright, var(--bb-text-strong)); font-weight: 600; }
.tk-tablo.katli .tk-fazla-sira { display: none; }
.tk-tablo tr[class*="tk-z-"] .tk-sira::before { content: ""; position: absolute; left: 0; top: 4px; bottom: 4px; width: 3px; border-radius: 2px; background: var(--z); }
.tk-z-iyi { --z: var(--bb-ok); }
.tk-z-orta { --z: var(--bb-gold); }
.tk-z-kotu { --z: var(--bb-bad); }
.tk-lejant { display: flex; flex-wrap: wrap; gap: 4px 14px; margin: 10px 0 0; color: var(--bb-text-dim); font: 11px var(--bb-font-mono); }
.tk-lejant span { display: inline-flex; align-items: center; gap: 6px; }
.tk-lejant i { width: 8px; height: 8px; border-radius: 2px; background: var(--z); }
.tk-dip { margin: 8px 0 0; color: var(--bb-text-faint); font: 10px var(--bb-font-mono); text-align: right; }

.tk-tahmin { width: min(860px, calc(100vw - 32px)); }
.tk-tahmin-izgara { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.tk-tahmin-izgara h3 { margin: 0 0 8px; color: var(--bb-text-dim); font: 11px var(--bb-font-mono); text-transform: none; }
.tk-tahmin-izgara > section > button { margin-top: 10px; }
.tk-tahmin-mac { display: grid; grid-template-columns: 1fr 40px 8px 40px 1fr; align-items: center; gap: 6px; padding: 5px 0; border-bottom: 1px solid var(--bb-border); font-size: 13px; }
.tk-tahmin-mac .ev { text-align: right; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tk-tahmin-mac .dep { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tk-tahmin-mac input { width: 40px; padding: 4px 2px; text-align: center; font: 13px var(--bb-font-mono); -moz-appearance: textfield; }
.tk-tahmin-mac input::-webkit-outer-spin-button, .tk-tahmin-mac input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.tk-tablo tr.tk-tahminli .tk-takim { color: var(--bb-gold); }
.tk-ok { margin-left: 3px; font-size: 9px; }
.tk-ok.yukari { color: var(--bb-ok); }
.tk-ok.asagi { color: var(--bb-bad); }
@media (max-width: 600px) {
  .tk-tablo .tk-gizle { display: none; }
  .tk-sekmeler { gap: 4px; }
  .tk-sekmeler button { flex: 1 1 auto; padding: 5px 4px; font-size: 11px; white-space: nowrap; }
  .tk-tablo .tk-takim { max-width: 120px; }
  .tk-tahmin { width: calc(100vw - 20px); }
  .tk-tahmin-izgara { grid-template-columns: 1fr; }
}

/* ── görevler (5C-4): gün noktası içi boş halka; (+) ekleme penceresi; seçili günde "görevler" grubu ── */
.tk-nokta.tk-gorev-nokta { background: none; box-shadow: inset 0 0 0 1px var(--bb-cat-green); width: 5px; height: 5px; }
.tk-arti { font: 600 18px var(--bb-font-mono); line-height: 1; }
.tk-gorevgrup .bb-grup-baslik a { color: inherit; text-decoration: none; }
.tk-gorevgrup .bb-grup-baslik a:hover { text-decoration: underline; }
.tk-gorevgrup a.tk-satir { text-decoration: none; }
.tk-gorevgrup a.tk-satir:hover .ad { color: var(--bb-gold); }
.tk-gorev-form { display: grid; gap: 10px; }
.tk-gorev-form > label { display: grid; gap: 4px; color: var(--bb-text-dim); font: 12px var(--bb-font-mono); }
.tk-gorev-form > label[hidden] { display: none; }
.tk-gorev-form fieldset { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; margin: 0; padding: 0; border: 0; }
.tk-gorev-form legend { width: 100%; margin-bottom: 4px; padding: 0; color: var(--bb-text-dim); font: 12px var(--bb-font-mono); }
.tk-gorev-form fieldset label { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; }
.tk-gorev-form input[type="time"] { width: auto; }
.tk-gorev-alt { display: flex; align-items: center; gap: 10px; margin: 4px 0 0; }
.tk-gorev-durum { font: 12px var(--bb-font-mono); color: var(--bb-text-dim); }
.tk-gorev-durum.bad { color: var(--bb-bad); }
.tk-gorev-durum.ok { color: var(--bb-ok); }

/* ── gelir / gider (6A): tek nokta + seçili günde liste ── */
.tk-nokta.tk-fin-bill, .tk-cubuk.tk-fin-bill { background: var(--bb-bad); }
.tk-nokta.tk-fin-income, .tk-cubuk.tk-fin-income { background: var(--bb-ok); }
.tk-nokta.tk-fin-expense, .tk-cubuk.tk-fin-expense { background: var(--bb-cat-orange); }
.tk-fingrup .bb-grup-baslik a { color: inherit; text-decoration: none; }
.tk-fingrup .bb-grup-baslik a:hover { text-decoration: underline; }
.tk-fingrup .tk-fin-ekle { color: var(--bb-gold); font: 12px var(--bb-font-mono); }
.tk-fingrup a.tk-satir { text-decoration: none; }
.tk-ne.tk-fin-gelir { color: var(--bb-ok); }
