<div class="file-tree">
<ul>
<li>
<details open>
<summary>📁 Project Root</summary>
<ul>
<li>
<details>
<summary>📁 src</summary>
<ul>
<li>📄 index.html</li>
<li>📄 style.css</li>
<li>📄 script.js</li>
</ul>
</details>
</li>
<li>
<details>
<summary>📁 assets</summary>
<ul>
<li>🖼 logo.png</li>
<li>🖼 banner.jpg</li>
</ul>
</details>
</li>
<li>📄 README.md</li>
</ul>
</details>
</li>
</ul>
</div>
.file-tree {
font-family: system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
background: #1e293b;
color: #e2e8f0;
padding: 20px;
border-radius: 12px;
max-width: 300px;
}
ul {
list-style: none;
padding-left: 20px;
}
.file-tree > ul {
padding-left: 0;
margin: 0;
}
li {
margin: 5px 0;
}
summary {
cursor: pointer;
list-style: none;
padding: 4px 8px;
border-radius: 4px;
transition: background 0.2s;
display: flex;
align-items: center;
gap: 6px;
}
summary::-webkit-details-marker {
display: none;
}
summary:hover {
background: #334155;
}
summary::before {
content: "\25B6";
font-size: 0.6rem;
margin-right: 5px;
transition: transform 0.2s;
color: #94a3b8;
}
details[open] > summary::before {
transform: rotate(90deg);
}
.file-tree li:not(:has(details)) {
padding-left: 24px;
display: flex;
align-items: center;
gap: 6px;
color: #94a3b8;
padding-top: 4px;
padding-bottom: 4px;
}
.file-tree li:not(:has(details)):hover {
color: #fff;
background: rgba(255,255,255,0.05);
border-radius: 4px;
}