.public-document {max-width:80rem;margin:0 auto;padding:1rem;min-width:0}
.public-document [hidden] {display:none!important}
.public-topbar,.public-location,.public-heading {display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}
.public-topbar {border-bottom:1px solid var(--border);padding:.5rem 0 .8rem;margin-bottom:.6rem}
.public-topbar nav,.public-scope-links,.public-breadcrumbs {display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;min-width:0}
.public-topbar a,.public-location a {text-decoration:none}
.public-topbar a:hover,.public-location a:hover {text-decoration:underline}
.public-brand {font-weight:700;overflow-wrap:anywhere}
.public-location {margin-bottom:1.2rem;font-size:.9rem}
.public-breadcrumbs a {overflow-wrap:anywhere}
.public-breadcrumbs a+a:before {content:'›';color:var(--muted);margin-right:.7rem}
.public-heading h1 {font-size:1.35rem;margin:.4rem 0}
.public-notice {color:var(--muted);font-size:.85rem;margin:.3rem 0 1rem}
.public-skip {position:absolute;left:-9999px}
.public-skip:focus {left:1rem;top:1rem;background:var(--bg);padding:.6rem;z-index:1000}
.public-document :focus-visible {outline:2px solid var(--accent,var(--link));outline-offset:3px}
.public-tree-tools {display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:.7rem 0}
.public-tree-tools label {display:flex;align-items:center;gap:.5rem}
.public-tree-tools input {max-width:100%;min-width:0}
.public-tree {display:flex;flex-direction:column}
.public-tree-row {display:flex;gap:.4rem;align-items:center;min-height:2rem;padding:.15rem .3rem .15rem calc(min(var(--depth),16)*1rem);border-bottom:1px solid var(--border-soft)}
.public-tree-row:hover {background:var(--button-hover-bg)}
.public-tree-row button,.public-tree-spacer {width:1.6rem;flex-shrink:0;padding:0;text-align:center}
.public-tree-name {overflow-wrap:anywhere;min-width:0}
.public-tree-name {text-decoration:none}
.public-tree-name:hover {text-decoration:underline}
.public-tree-folder {margin-left:auto;padding:.2rem .5rem;text-decoration:none}
.public-children-list,.public-children-details,.public-children-icons {list-style:none;padding:0;margin:.5rem 0}
.public-children-list li,.public-children-details li,.public-children-icons li {display:flex;gap:.5rem;align-items:center;min-width:0;padding:.5rem;border-bottom:1px solid var(--border-soft)}
.public-child-link {display:flex;align-items:center;gap:.5rem;min-width:0;overflow-wrap:anywhere;text-decoration:none}
.public-child-link:hover {text-decoration:underline}
.public-child-folder {margin-left:auto;padding:.2rem .5rem;text-decoration:none;flex-shrink:0}
.public-children-details small {color:var(--muted);overflow-wrap:anywhere;margin-left:auto;font-size:.8rem}
.public-children-icons {display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.5rem}
.public-children-icons li {border:1px solid var(--border);border-radius:.4rem;position:relative;align-items:stretch}
.public-children-icons .public-child-link {flex:1;flex-direction:column;align-items:center;text-align:center;padding:.6rem .2rem}
.public-children-icons .public-child-link>span:first-child {font-size:2rem}
.public-children-icons .public-child-folder {position:absolute;right:.15rem;top:.15rem}
.public-children-views {display:flex;gap:.35rem;margin:.5rem 0}
.public-tree-tools button {padding:.25rem .55rem}
.public-children-views button {display:grid;place-items:center;width:1.75rem;height:1.75rem;padding:0;border:1px solid var(--border-soft);border-radius:.3rem;background:transparent;color:var(--muted);cursor:pointer}
.public-children-views button:hover,.public-children-views button[aria-pressed=true] {border-color:var(--link);color:var(--link)}
.public-document .children-next {min-height:2rem}
@media(max-width:600px) {.public-document{padding:.6rem}.public-topbar nav{gap:.5rem;font-size:.85rem}.public-children-details li{flex-wrap:wrap}.public-children-details small{width:100%;margin-left:1.5rem}.public-tree-row{padding-left:calc(min(var(--depth),8)*.7rem)}.public-tree-tools label{width:100%}.public-tree-tools input{flex:1;width:8rem}}
@media(max-width:600px) {.public-topbar .public-nav-label{display:none}.public-topbar nav a{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;min-height:2rem;font-size:1.25rem}}
