.portal-header{gap:1.5rem;flex-wrap:wrap;height:auto;min-height:76px}.portal-header nav{overflow:visible;display:flex;gap:1.1rem;align-items:center;flex-wrap:wrap;flex:1}.portal-header nav>a{font-size:.85rem;white-space:nowrap}.portal-header [aria-current=page]{color:var(--gold,#d4b15c)}.nav-menu{margin-left:auto;position:relative}.nav-menu>summary{cursor:pointer}.nav-menu>div{position:absolute;right:0;top:2rem;z-index:20;background:var(--panel,#121f2f);border:1px solid var(--border,#2c4056);border-radius:10px;min-width:190px;padding:1rem;display:grid;gap:.8rem}.portal-form{display:grid;gap:1rem;max-width:760px}.portal-form label{display:grid;gap:.4rem}.portal-form textarea{font:inherit;color:inherit;background:var(--bg,#0b1320);border:1px solid #304155;border-radius:6px;padding:.8rem;width:100%;resize:vertical}.portal-form .checkbox{display:flex;align-items:center;gap:.6rem}.portal-form input[type=checkbox]{width:auto}.portal-panel{padding:1.5rem;border:1px solid #2b3d51;border-radius:12px;background:var(--panel,#121f2f);margin-bottom:1.3rem}.portal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:1.2rem}.portal-grid .portal-panel{margin:0}.portal-panel h2,.portal-panel h3{margin:0 0 .7rem}.portal-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75}.portal-meta{font-size:.8rem;color:#96acc4;margin:.7rem 0}.portal-toolbar,.actions{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;margin-bottom:1rem}.portal-toolbar input{flex:1;min-width:180px}.portal-table{overflow:auto}.portal-table table{width:100%;border-collapse:collapse}.portal-table th,.portal-table td{text-align:left;padding:.9rem;vertical-align:top;border-bottom:1px solid #2b3d51}.portal-table th:first-child,.portal-table td:first-child{padding-left:0}.portal-table pre{white-space:pre-wrap;max-width:600px}.portal-form .actions{justify-content:flex-end}dialog{width:min(780px,94vw);max-height:90vh;overflow:auto;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:12px;padding:1.5rem}dialog::backdrop{background:#0009}#portalNotice:empty,#portalError:empty{display:none}#portalNotice{color:#58d4ad}.portal-panel a{overflow-wrap:anywhere}@media(max-width:700px){.portal-header{padding:1rem}.portal-header nav{gap:.8rem}.nav-menu{margin-left:0}.portal-panel{padding:1rem}}
