PageSourceSearch

https://tdb.org.tr/assets/ContentPagesListPage-DWOhocmW.js

js tdb.org.tr collected 2026-09-24 18:37:26 UTC 21,044 bytes, 201 lines download raw bytes

1import{a as z,j as e}from"./index-BhK3kIJk.js";import{r as n}from"./vendor-i18n-DQFRXMfG.js";import{L as _}from"./vendor-react-CDveK0zG.js";import{u as S,a5 as w,F as y,a6 as T,$ as j}from"./vendor-ui-CmuPpZw4.js";import"./vendor-seo-BcU9btEd.js";const p=[{slug:"tdb-hakkinda",title:"TDB Hakkında",section:"TDB Hakkında"},{slug:"tdb-orgutlenme",title:"Dişhekimlerinin Örgütlenme Çalışmaları",section:"TDB Hakkında"},{slug:"genel-baskanlar",title:"Genel Başkanlarımız",section:"TDB Hakkında",note:"Başlık ve giriş burada düzenlenir. Başkan listesi için Genel Başkanlar modülünü kullanın."},{slug:"tdb-onur-uyeleri",title:"Onur Üyeleri",section:"TDB Hakkında",note:"Başlık ve giriş burada düzenlenir. Üye listesi için Onur Üyeleri modülünü kullanın."},{slug:"misyon-vizyon",title:"Misyon ve Vizyon",section:"TDB Hakkında"},{slug:"swot-2010",title:"SWOT Analizi 2010",section:"TDB Hakkında"},{slug:"swot-2013",title:"SWOT Analizi 2013",section:"TDB Hakkında"},{slug:"stratejik-plan-1",title:"TADS Komisyonu I. Stratejik Plan",section:"TDB Hakkında"},{slug:"stratejik-plan-2",title:"TDB Stratejik Planı 2016–2020",section:"TDB Hakkında"},{slug:"organlar-myk",title:"Merkez Yönetim Kurulu",section:"Organlar",note:"Başlık ve giriş burada düzenlenir. Kurul üyeleri için Yönetim Kurulları modülünü kullanın."},{slug:"organlar-mdk",title:"Merkez Denetleme Kurulu",section:"Organlar",note:"Başlık ve giriş burada düzenlenir. Kurul üyeleri için Yönetim Kurulları modülünü kullanın."},{slug:"organlar-ydk",title:"Yüksek Disiplin Kurulu",section:"Organlar",note:"Başlık ve giriş burada düzenlenir. Kurul üyeleri için Yönetim Kurulları modülünü kullanın."},{slug:"tarihce-dishekimligi",title:"Dişhekimliği Tarihi",section:"Tarihçe"},{slug:"tarihce-egitim",title:"Dişhekimliği Eğitiminin Tarihi",section:"Tarihçe"},{slug:"kurum-yurt-ici",title:"Yurt İçi Kurum ve Kuruluşlar",section:"Kurumlar",note:"Başlık ve giriş burada düzenlenir. Kurum listesi için Kurum ve Kuruluşlar modülünü kullanın."},{slug:"kurum-yurt-disi",title:"Yurt Dışı Kurum ve Kuruluşlar",section:"Kurumlar",note:"Başlık ve giriş burada düzenlenir. Kurum listesi için Kurum ve Kuruluşlar modülünü kullanın."},{slug:"toplumsal-felaketler",title:"Toplumsal Felaketler",section:"Diğer",note:"Başlık ve giriş burada düzenlenir. Afet detayları için Toplumsal Afetler modülünü kullanın."},{slug:"odalar-gerekli-bilgiler",title:"Gerekli Bilgiler",section:"Odalar"},{slug:"odalar-gerekli-gorev",title:"Odanın Görev ve Yetkileri",section:"Odalar"},{slug:"odalar-gerekli-kayit",title:"Odaya Kayıt",section:"Odalar"},{slug:"odalar-gerekli-ornek",title:"Örnek Belgeler",section:"Odalar"},{slug:"odalar-gerekli-onay",title:"Onay İşlemleri",section:"Odalar"},{slug:"odalar-gerekli-ucretler",title:"Ücretler",section:"Odalar"},{slug:"odalar-gerekli-zam",title:"Gecikme Zammı",section:"Odalar"},{slug:"odalar-sahte-dishekimleri",title:"Sahte Dişhekimleriyle Mücadele",section:"Odalar"},{slug:"odalar-sahte-halk",title:"Halka Duyuru",section:"Odalar"},{slug:"odalar-sahte-mahkeme",title:"Mahkeme Kararları",section:"Odalar"},{slug:"odalar-sahte-rehber",title:"Başvuru Rehberi",section:"Odalar"},{slug:"odalar-sahte-satir",title:"Sektör Haberleri",section:"Odalar"},{slug:"odalar-sde-tanitma-yonergesi",title:"SDE Tanıtma Yönergesi",section:"Odalar"},{slug:"odalar-tads-basvuru",title:"TADS Başvuru",section:"Odalar"},{slug:"hukuk-ana",title:"Hukuk",section:"Hukuk"},{slug:"hukuk-mevzuat",title:"Mevzuat",section:"Hukuk"},{slug:"hukuk-mesai-denetleme",title:"Mesai Saatleri Dışında Yapılacak Denetlemeler",section:"Hukuk"},{slug:"hukuk-isyeri-ruhsat",title:"İşyeri Açma ve Çalışma Ruhsatları Hakkında Karar",section:"Hukuk"},{slug:"hukuk-ozel-saglik",title:"Özel Sağlık Kuruluşlarının Denetimi",section:"Hukuk"},{slug:"hukuk-reklam-saglik",title:"Reklam İlan — Sağlıkta Reklam",section:"Hukuk"},{slug:"hukuk-disiplin",title:"Disiplin Mevzuatı Dokümanları",section:"Hukuk"},{slug:"hukuk-ceza-yasasi",title:"Türk Ceza Yasası Düzenlemeleri ve Dişhekiminin Sorumluluğu",section:"Hukuk"},{slug:"hukuk-meslek-sorumluluk",title:"Meslek İcrası Sonucu Ortaya Çıkan Sorumluluklar",section:"Hukuk"},{slug:"hukuk-mahkeme-odalar",title:"Mahkeme Kararları",section:"Hukuk"},{slug:"dishekimleri-ana",title:"Dişhekimleri",section:"Dişhekimleri"}
1,{slug:"dishekimleri-meslek",title:"Dişhekimliği Mesleği",section:"Dişhekimleri"},{slug:"dishekimleri-gerekli-bilgiler",title:"Gerekli Bilgiler",section:"Dişhekimleri"},{slug:"dishekimleri-etik",title:"Etik",section:"Dişhekimleri"},{slug:"dishekimleri-etik-botoks-raporu",title:"Dişhekimliğinde Botoks ve Benzer Uygulamalar — TDB Etik Kurul Raporu",section:"Dişhekimleri"},{slug:"dishekimleri-etik-hasta-kayitlari-raporu",title:"Hasta Kayıtları ile Hekimin Başarı Garantisi Verememesi — TDB Etik Kurul Raporu",section:"Dişhekimleri"},{slug:"dishekimleri-ferdi-kaza",title:"Ferdi Kaza Sigortası",section:"Dişhekimleri"},{slug:"dishekimleri-tuketici",title:"Tüketici Hakları",section:"Dişhekimleri"},{slug:"dishekimleri-sde",title:"SDE — Sürekli Dişhekimliği Eğitimi",section:"Dişhekimleri"},{slug:"dishekimleri-meslek-baslarken",title:"Meslek Yaşantımıza Başlarken",section:"Dişhekimleri"},{slug:"dishekimleri-meslek-haklar",title:"Hak, Görev ve Sorumluluklar",section:"Dişhekimleri"},{slug:"dishekimleri-meslek-belgeler",title:"Muayenehane Açmak İçin Gerekli Belgeler",section:"Dişhekimleri"},{slug:"dishekimleri-meslek-aslmasi",title:"Muayenehanelerde Bulunması ve Asılması Gerekenler",section:"Dişhekimleri"},{slug:"dishekimleri-meslek-kurallar",title:"Uyulması Gereken Bazı Kurallar",section:"Dişhekimleri"},{slug:"dishekimleri-meslek-vademecum",title:"Vademecum İlaç Rehberi",section:"Dişhekimleri"},{slug:"dishekimleri-meslek-yonetmelik1",title:"Ağız ve Diş Sağlığı Yönetmeliği",section:"Dişhekimleri"},{slug:"dishekimleri-meslek-yonetmelik2",title:"Sağlık Hizmetlerinde Tanıtım Yönetmeliği",section:"Dişhekimleri"},{slug:"dishekimleri-meslek-mevzuat",title:"Mevzuat",section:"Dişhekimleri"},{slug:"dishekimleri-meslek-tabela",title:"Tabela Standartları",section:"Dişhekimleri"},{slug:"dishekimleri-gerekli-ucretler",title:"Sözleşmeli Dişhekimlerinin Ücretleri",section:"Dişhekimleri"},{slug:"dishekimleri-gerekli-sozlesme",title:"Tip Sözleşme Örneği ve Taahhütname",section:"Dişhekimleri"},{slug:"dishekimleri-gerekli-ornekler",title:"Örnek Sözleşmeler",section:"Dişhekimleri"},{slug:"dishekimleri-gerekli-zam",title:"Amme Alacaklarına Gecikme Zammı",section:"Dişhekimleri"},{slug:"dishekimleri-ucret-hakkinda",title:"Tedavi Ücretleri Hakkında",section:"Dişhekimleri"},{slug:"dishekimleri-sigorta-hakkinda",title:"Sigorta Hakkında",section:"Dişhekimleri"},{slug:"dishekimleri-sigorta-istatistik",title:"Sigorta İstatistikleri",section:"Dişhekimleri"},{slug:"dishekimleri-tuketici-evrensel",title:"Evrensel Tüketici Hakları",section:"Dişhekimleri"},{slug:"dishekimleri-tuketici-kanun",title:"Tüketicinin Korunması Hakkındaki Kanun",section:"Dişhekimleri"},{slug:"dishekimleri-tuketici-kimdir",title:"Bilinçli Tüketici Kimdir?",section:"Dişhekimleri"},{slug:"dishekimleri-tuketici-biliyor",title:"Bunları Biliyor musunuz?",section:"Dişhekimleri"},{slug:"dishekimleri-tuketici-teblig",title:"Tıbbi Cihazlar Uyarı Sistemine İlişkin Tebliğ",section:"Dişhekimleri"},{slug:"dishekimleri-sde-e-egitim",title:"E-Eğitim",section:"Dişhekimleri"},{slug:"erisebilirlik",title:"Erişilebilirlik Beyanı",section:"Yasal"},{slug:"site-haritasi",title:"Site Haritası",section:"Yasal"},{slug:"gizlilik",title:"Gizlilik Politikası",section:"Yasal"},{slug:"kullanim-kosullari",title:"Kullanım Koşulları",section:"Yasal",note:"Hukuki metin. Değişiklikler yayımlandığı anda sitede geçerli olur; düzenleme öncesi Hukuk Müşavirliği görüşü alınması önerilir."},{slug:"sde-gorevi",title:"SDE Yüksek Kurulu Görevi",section:"SDE & Öğrenci Kolu",note:"Metin burada düzenlenir. Kurul üyeleri için Yönetim Kurulları modülünü kullanın."},{slug:"ogr-kolu-gorevi",title:"Öğrenci Kolu Görevi",section:"SDE & Öğrenci Kolu",note:"Metin burada düzenlenir. Komisyon üyeleri için Yönetim Kurulları modülünü kullanın."},{slug:"ogr-kolu-yonergesi",title:"Öğrenci Kolu Yönergesi",section:"SDE & Öğrenci Kolu",note:"Yönerge metnini buradan düzenleyin. PDF bağlantısı relatedLinks alanına eklenebilir."},{slug:"akademi-gorevleri",title:"TDB Akademi Kuruluş Amacı ve Görevi",section:"TDB Akademi",note:"İçerik sayfası için kullanılır. Yürütme Kurulu için Yönetim Kurulları modülünü kullanın."},{slug:"akademi-vizyon-misyon",title:"Vizyonumuz & Misyonumuz",section:"TDB Akademi"},{slug:"akademi-degerlerimiz",title:"Değerlerimiz",section:"TDB Akademi"},{slug:"akademi-mevzuat",title:"Mevzuat",section:"TDB Akademi",note:'Belgeleri "İlgili Bağlantılar" alanına ekleyin, gövde metnine gerek yok.'}],B={Dişhekimleri:[{label:"Genel Sayfalar",match:i=>["dishekimleri-ana","dishekimleri-meslek","dishekimleri-gerekli-bilgiler","dis
1hekimleri-etik","dishekimleri-sde"].includes(i)},{label:"Meslek Hayatı",match:i=>i.startsWith("dishekimleri-meslek-")},{label:"Gerekli Bilgiler & Sözleşmeler",match:i=>i.startsWith("dishekimleri-gerekli-")&&i!=="dishekimleri-gerekli-bilgiler"},{label:"Tedavi Ücretleri",match:i=>i.startsWith("dishekimleri-ucret-")},{label:"Sigorta",match:i=>i==="dishekimleri-ferdi-kaza"||i.startsWith("dishekimleri-sigorta-")},{label:"Tüketici Hakları",match:i=>i==="dishekimleri-tuketici"||i.startsWith("dishekimleri-tuketici-")},{label:"SDE",match:i=>i.startsWith("dishekimleri-sde-")}],Odalar:[{label:"Gerekli Bilgiler",match:i=>i.startsWith("odalar-gerekli-")},{label:"Sahte Dişhekimleriyle Mücadele",match:i=>i.startsWith("odalar-sahte-")},{label:"SDE & TADS",match:i=>i.startsWith("odalar-sde-")||i.startsWith("odalar-tads-")}]},K={"TDB Hakkında":"Örgütlenme tarihi, genel başkanlar ve onur üyeleri",Organlar:"MYK, MDK ve YDK kurul tanıtım sayfaları","SDE & Öğrenci Kolu":"SDE Yüksek Kurulu ve öğrenci kolu içerikleri","TDB Akademi":"TDB Akademi kuruluş amacı ve görevi",Tarihçe:"Dişhekimliği ve eğitiminin tarihsel gelişimi",Kurumlar:"Yurt içi ve yurt dışı kurum ve kuruluşlar",Diğer:"Toplumsal felaketler ve genel sayfalar",Dişhekimleri:"Meslek hayatı, ücretler, sigorta ve tüketici hakları",Odalar:"Oda bilgileri, kayıt işlemleri ve sahte dişhekimleri",Hukuk:"Mevzuat, denetim ve mesleki sorumluluk konuları",Yasal:"Gizlilik politikası, erişilebilirlik ve site haritası"},b=["TDB Hakkında","Organlar","SDE & Öğrenci Kolu","TDB Akademi","Tarihçe","Kurumlar","Diğer","Dişhekimleri","Odalar","Hukuk","Yasal"];function N(i){if(!i)return"—";const t=new Date(i);return isNaN(t.getTime())?i.slice(0,10):t.toLocaleDateString("tr-TR")}const L=()=>{const[i,t]=n.useState(""),[a,o]=n.useState(""),[d,c]=n.useState({}),[r,m]=n.useState(!0);n.useEffect(()=>{z("/admin/content-pages").then(l=>l.ok?l.json():null).then(l=>{if(!l)return;const u=Array.isArray(l)?l:l.data??[],x={};u.forEach(h=>{h.updatedAt&&(x[h.slug]=h.updatedAt)}),c(x)}).catch(()=>{}).finally(()=>m(!1))},[]);const s=p.map(l=>({...l,updatedAt:d[l.slug]??""})),v=n.useMemo(()=>{const l={};return s.forEach(u=>{l[u.section]=(l[u.section]??0)+1}),l},[s]),k=i.trim().length>0,g=n.useMemo(()=>{if(!k)return[];const l=i.toLowerCase();return s.filter(u=>u.title.toLowerCase().includes(l)||u.slug.includes(l))},[s,i,k]),D=n.useMemo(()=>s.filter(l=>l.section===a),[s,a]);return e.jsxs("div",{className:"admin-list-page",children:[e.jsx("div",{className:"admin-list-page__header",style:{marginBottom:"1rem"},children:e.jsxs("div",{children:[e.jsx("h2",{className:"admin-list-page__title",children:"İçerik Sayfaları"}),e.jsxs("p",{className:"admin-list-page__count",children:[p.length," sayfa · ",b.length," bölüm"]})]})}),e.jsxs("div",{className:"admin-list-page__filters",style:{marginBottom:"1.25rem"},children:[e.jsxs("div",{className:"admin-list-page__search",children:[e.jsx(S,{size:15,className:"admin-list-page__search-icon","aria-hidden":"true"}),e.jsx("input",{type:"search",className:"admin-list-page__search-input",placeholder:"Sayfa adı veya slug ile ara...",value:i,onChange:l=>{t(l.target.value),l.target.value&&o("")},"aria-label":"Sayfa ara"})]}),k&&e.jsxs("span",{className:"admin-list-page__count",style:{lineHeight:"36px"},children:[g.length," sonuç"]})]}),r?e.jsxs("div",{className:"admin-list-page__loading","aria-live":"polite",children:[e.jsx("span",{className:"spinner-border spinner-border-sm",role:"status","aria-hidden":"true"}),"Yükleniyor..."]}):k?g.length===0?e.jsx("div",{className:"admin-list-page__empty",children:e.jsx("p",{children:"Aramanıza uygun sayfa bulunamadı."})}):e.jsx(f,{pages:g,showSection:!0}):e.jsxs("div",{className:"cpl-layout",children:[e.jsxs("aside",{className:"cpl-sidebar","aria-label":"Bölüm navigasyonu",children:[e.jsxs("button",{className:`cpl-sidebar__item${a===""?" is-active":""}`,onClick:()=>o(""),children:[e.jsx(w,{size:14,"aria-hidden":"true"}),e.jsx("span",{className:"cpl-sidebar__label",children:"Tüm Bölümler"}),e.jsx("span",{className:"cpl-sidebar__count",children:p.length})]}),e.jsx("div",{className:"cpl-sidebar__divider"}),b.map(l=>e.jsxs("button",{className:`cpl-sidebar__item${a===l?" is-active":""}`,onClick:()=>o(l),children:[e.jsx(y,{size:13,"aria-hidden":"true"}),e.jsx("span",{className:"cpl-sidebar__label",children:l}),e.jsx("span",{className:"cpl-sidebar__count",children:v[l]??0})]},l))]}),e.jsx("main",{className:"cpl-main",children:a===""?e.jsx("div",{className:"cpl-overview",children:b.map(l=>e.jsxs("button",{className:"cpl-overview__card",onClick:()=>o(l),type:"button",children:[e.jsxs("div",{className:"cpl-overview__card-header",children:[e.jsx("span",{className:"cpl-overview__card-title",children:l}),e.jsxs("span",{className:"cpl-overview__card-badge",children:[v[l]??0," sayfa"]})]}),e.jsx("p",{className:"cpl-overview__card-desc",children:K[l]}),e.jsx("span",{className:"cpl-overview__card-cta",children:"Sayfaları görüntüle ›"})]},l))}):e.jsx(H,{section:a,pages:D})})]}),e.jsx("style",{children:A})]})};function H({section:i,pages:t}){const a=B[i];if(!a)return e.jsx(f,{pages:t});const o=new Set,d=a.map(r=>{const m=t.filter(s=>r.match(s.slug));return m.forEach(s=>o.add(s.slug)),{label:r.label,pages:m}}),c=t.filter(r=>!o.has(r.slug));return c.length>0&&d.push({label:"Diğer",pages:c}),e.jsx("div",{className:"cpl-groups",children:d.filter(r=>r.pages.length>0).map(r=>e.jsxs("section",{className:"cpl-group","aria-label":r.label,children:[e.jsxs("div",{className:"cpl-group__header",children:[e.jsx("span",{className:"cpl-group__label",children:r.label}),e.jsxs("span",{className:"cpl-group__count",children:[r.pages.length," sayfa"]})]}),e.jsx(f,{pages:r.pages})]},r.label))})}function f({pages:i,showSection:t}){return e.jsx("div",{className:"cpl-page-list",role:"list",children:i.map(a=>e.jsxs("div",{className:"cpl-page-row",role:"listitem",children:[e.jsx(y,{size:14,className:"cpl-page-row__icon","aria-hidden":"true"}),e.jsxs("div",{className:"cpl-page-row__body",children:[e.jsx(_,{to:`/admin/kurumsal/sayfalar/${a.slug}`,className:"cpl-page-row__title",children:a.title}),e.jsxs("div",{className:"cpl-page-row__meta",children:[e.jsx("code",{className:"cpl-page-row__slug",children:a.slug}),t&&e.jsx("span",{className:"admin-table__target-chip",style:{fontSize:"0.7rem",padding:"1px 7px"},children:a.section}),a.updatedAt&&e.jsx("span",{className:"cpl-page-row__date",children:N(a.updatedAt)})]}),a.note&&e.jsxs("p",{className:"cpl-page-row__note",children:[e.jsx(T,{size:11,"aria-hidden":"true",style:{flexShrink:0,marginTop:1}}),a.note]})]}),e.jsx(_,{to:`/admin/kurumsal/sayfalar/${a.slug}`,className:"admin-table__action-btn",title:`"${a.title}" sayfasını düzenle`,"aria-label":`"${a.title}" sayfasını düzenle`,children:e.jsx(j,{size:14,"aria-hidden":"true"})})]},a.slug))})}const A=`
2  /* Layout */
3  .cpl-layout {
4    display: flex;
5    gap: 1.75rem;
6    align-items: flex-start;
7  }
8
9  /* Sidebar */
10  .cpl-sidebar {
11    width: 224px;
12    flex-shrink: 0;
13    background: #f8f9fa;
14    border: 1px solid #e9ecef;
15    border-radius: 10px;
16    padding: 0.625rem;
17    position: sticky;
18    top: 1rem;
19    max-height: calc(100vh - 120px);
20    overflow-y: auto;
21  }
22  .cpl-sidebar__item {
23    display: flex;
24    align-items: center;
25    gap: 0.55rem;
26    width: 100%;
27    padding: 0.55rem 0.7rem;
28    border: none;
29    background: none;
30    border-radius: 7px;
31    cursor: pointer;
32    text-align: left;
33    font-size: 0.8rem;
34    color: #495057;
35    transition: background 0.12s, color 0.12s;
36  }
37  .cpl-sidebar__item:hover { background: #e9ecef; color: #212529; }
38  .cpl-sidebar__item.is-active { background: #e51f2d; color: #fff; }
39  .cpl-sidebar__item.is-active .cpl-sidebar__count { background: rgba(255,255,255,0.25); color: #fff; }
40  .cpl-sidebar__label { flex: 1; font-weight: 500; line-height: 1.35; }
41  .cpl-sidebar__count {
42    font-size: 0.68rem;
43    font-weight: 600;
44    background: #dee2e6;
45    color: #6c757d;
46    border-radius: 10px;
47    padding: 1px 7px;
48    min-width: 24px;
49    text-align: center;
50    flex-shrink: 0;
51  }
52  .cpl-sidebar__divider {
53    height: 1px;
54    background: #dee2e6;
55    margin: 0.5rem 0.35rem;
56  }
57
58  /* Main panel */
59  .cpl-main { flex: 1; min-width: 0; }
60
61  /* Overview cards */
62  .cpl-overview {
63    display: grid;
64    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
65    gap: 1rem;
66  }
67  .cpl-overview__card {
68    background: #fff;
69    border: 1px solid #dee2e6;
70    border-radius: 10px;
71    padding: 1.1rem 1.25rem;
72    cursor: pointer;
73    text-align: left;
74    transition: border-color 0.15s, box-shadow 0.15s;
75  }
76  .cpl-overview__card:hover {
77    border-color: #e51f2d;
78    box-shadow: 0 3px 12px rgba(229,31,45,0.09);
79  }
80  .cpl-overview__card-header {
81    display: flex;
82    align-items: center;
83    justify-content: space-between;
84    gap: 0.5rem;
85    margin-bottom: 0.45rem;
86  }
87  .cpl-overview__card-title {
88    font-size: 0.9rem;
89    font-weight: 600;
90    color: #212529;
91  }
92  .cpl-overview__card-badge {
93    font-size: 0.7rem;
94    font-weight: 600;
95    background: #f1f3f5;
96    color: #6c757d;
97    border-radius: 10px;
98    padding: 2px 9px;
99    white-space: nowrap;
100    flex-shrink: 0;
101  }
102  .cpl-overview__card-desc {
103    font-size: 0.775rem;
104    color: #6c757d;
105    margin: 0 0 0.65rem;
106    line-height: 1.5;
107  }
108  .cpl-overview__card-cta {
109    font-size: 0.74rem;
110    color: #e51f2d;
111    font-weight: 500;
112  }
113
114  /* Groups */
115  .cpl-groups { display: flex; flex-direction: column; gap: 2rem; }
116  .cpl-group__header {
117    display: flex;
118    align-items: center;
119    gap: 0.65rem;
120    margin-bottom: 0.75rem;
121    padding-bottom: 0.5rem;
122    border-bottom: 2px solid #f1f3f5;
123  }
124  .cpl-group__label {
125    font-size: 0.72rem;
126    font-weight: 700;
127    text-transform: uppercase;
128    letter-spacing: 0.07em;
129    color: #6c757d;
130  }
131  .cpl-group__count {
132    font-size: 0.68rem;
133    color: #adb5bd;
134  }
135
136  /* Page rows */
137  .cpl-page-list { display: flex; flex-direction: column; gap: 4px; }
138  .cpl-page-row {
139    display: flex;
140    align-items: flex-start;
141    gap: 0.75rem;
142    padding: 0.7rem 0.9rem;
143    border-radius: 8px;
144    background: #fff;
145    border: 1px solid transparent;
146    transition: border-color 0.1s, background 0.1s;
147  }
148  .cpl-page-row:hover { background: #f8f9fa; border-color: #e9ecef; }
149  .cpl-page-row__icon { color: #ced4da; flex-shrink: 0; margin-top: 2px; }
150  .cpl-page-row__body { flex: 1; min-width: 0; }
151  .cpl-page-row__title {
152    font-size: 0.875rem;
153    font-weight: 500;
154    color: #212529;
155    text-decoration: none;
156    display: block;
157    white-space: nowrap;
158    overflow: hidden;
159    text-overflow: ellipsis;
160    margin-bottom: 3px;
161  }
162  .cpl-page-row__title:hover { color: #e51f2d; text-decoration: underline; }
163  .cpl-page-row__meta {
164    display: flex;
165    align-items: center;
166    gap: 0.5rem;
167    flex-wrap: wrap;
168  }
169  .cpl-page-row__slug {
170    font-size: 0.695rem;
171    color: #868e96;
172    background: #f1f3f5;
173    padding: 1px 6px;
174    border-radius: 3px;
175    font-family: monospace;
176    letter-spacing: 0;
177  }
178  .cpl-page-row__date {
179    font-size: 0.695rem;
180    color: #adb5bd;
181  }
182  .cpl-page-row__note {
183    display: flex;
184    align-items: flex-start;
185    gap: 0.35rem;
186    font-size: 0.73rem;
187    color: #6c757d;
188    background: #fffbeb;
189    border-left: 2px solid #fbbf24;
190    padding: 4px 9px;
191    border-radius: 0 5px 5px 0;
192    margin: 0.4rem 0 0;
193    line-height: 1.45;
194  }
195
196  @media (max-width: 768px) {
197    .cpl-layout { flex-direction: column; }
198    .cpl-sidebar { width: 100%; position: static; max-height: none; display: flex; flex-wrap: wrap; gap: 0.25rem; }
199    .cpl-overview { grid-template-columns: 1fr 1fr; }
200  }
201`;export{L as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.