.portal-shell{max-width:1440px;margin:0 auto;padding:24px 28px 64px}
.portal-toolbar{position:sticky;top:52px;z-index:25;display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px;margin:18px 0 24px;background:color-mix(in srgb,var(--surface) 94%,transparent);border:1px solid var(--line);border-radius:18px;backdrop-filter:blur(14px);box-shadow:0 12px 30px rgba(15,23,42,.08)}
.portal-toolbar input,.portal-toolbar select{min-height:42px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);padding:8px 12px;font:inherit}.portal-toolbar input{min-width:min(360px,100%);flex:1}.portal-toolbar button{min-height:42px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);color:var(--text);padding:8px 13px;font-weight:800;cursor:pointer}
.area-nav{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 22px;padding:10px;border:1px solid var(--line);border-radius:16px;background:var(--surface2)}.area-nav a{padding:8px 12px;border-radius:11px;font-weight:800;text-decoration:none}.area-nav a:hover,.area-nav a[aria-current="page"]{background:var(--accent);color:#fff}
.module-summary{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.module-summary span,.tech-badge{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:4px 9px;background:var(--surface2);font-size:.8rem;font-weight:850}
.module-group{margin:28px 0}.module-group>h2{display:flex;align-items:center;gap:10px}.module-card{margin:10px 0;border:1px solid var(--line);border-radius:17px;background:var(--surface);overflow:hidden;box-shadow:0 8px 22px rgba(15,23,42,.045)}.module-card[open]{box-shadow:0 14px 30px rgba(15,23,42,.085)}.module-card>summary{display:flex;flex-wrap:wrap;align-items:center;gap:10px;cursor:pointer;padding:16px 18px;font-weight:900;list-style:none}.module-card>summary::-webkit-details-marker{display:none}.module-card>summary:before{content:'›';font-size:1.35rem;transition:transform .2s}.module-card[open]>summary:before{transform:rotate(90deg)}.module-card .module-body{border-top:1px solid var(--line);padding:18px;overflow:auto}.module-card .source-path{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted);font-size:.78rem;word-break:break-all}.module-card .layout{display:block!important;min-height:0!important}.module-card aside,.module-card .global-home-bar,.module-card .topbar,.module-card .footer{display:none!important}.module-card main{max-width:none!important;margin:0!important;padding:0!important}.module-card h1{font-size:1.45rem!important;margin-top:0!important}.module-card h2{font-size:1.18rem!important;margin-top:1.4rem!important}.module-card style,.module-card script{display:none!important}
.portal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.portal-card{display:block;border:1px solid var(--line);border-radius:18px;padding:18px;background:var(--surface);text-decoration:none;color:inherit;box-shadow:0 8px 24px rgba(15,23,42,.05)}.portal-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(15,23,42,.1)}.portal-card h3{margin:.2rem 0 .55rem}.portal-card p{color:var(--muted);margin:.35rem 0}.portal-card .path{font-size:.76rem;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted);word-break:break-all}
.consolidated-section{margin:28px 0;border:1px solid var(--line);border-radius:20px;background:var(--surface);overflow:hidden}.consolidated-section>summary{cursor:pointer;padding:18px 20px;font-size:1.15rem;font-weight:900;background:var(--surface2)}.consolidated-section>.consolidated-body{padding:20px;overflow:auto}.consolidated-section .layout{display:block!important;min-height:0!important}.consolidated-section aside,.consolidated-section .global-home-bar,.consolidated-section .topbar,.consolidated-section .footer{display:none!important}.consolidated-section main{max-width:none!important;margin:0!important;padding:0!important}
.docs-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.docs-list a{display:block;border:1px solid var(--line);border-radius:16px;padding:16px;background:var(--surface);text-decoration:none}.docs-list small{display:block;color:var(--muted);margin-top:6px;word-break:break-all}
@media(max-width:720px){.portal-shell{padding:16px 14px 54px}.portal-toolbar{top:44px}.module-card>summary{padding:14px}.module-card .module-body{padding:14px}.area-nav{overflow:auto;flex-wrap:nowrap}.area-nav a{white-space:nowrap}}