.portal-info-tools{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:0 0 20px}
.portal-info-tools p{margin:0 auto 0 0;font-weight:700}
.portal-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,205px),1fr));gap:16px}
.portal-info-group{margin-bottom:28px}
.portal-info-group h2{font-size:1.25rem;margin:0 0 12px}
.portal-info-card{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid currentColor;border-radius:10px;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer;overflow-wrap:anywhere}
.portal-info-card:hover,.portal-info-card:focus-visible{border-color:#80bc00;outline:2px solid #80bc00;outline-offset:2px}
.info-project-cover{display:grid;place-items:center;width:100%;aspect-ratio:4/5;overflow:hidden;position:relative;background:#e4effb;border-radius:6px;color:#003f8a}
.info-project-cover img,.info-project-cover canvas{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;grid-area:1/1}
.info-project-placeholder{font-weight:700;grid-area:1/1}
.portal-info-card-link{font-size:.9rem;font-weight:700}
.portal-info-editor{max-height:min(90dvh,860px);max-width:calc(100% - 28px);width:680px;padding:clamp(16px,4vw,28px);border:1px solid currentColor;border-radius:14px}
.portal-info-editor::backdrop{background:#122e4eb0}
.portal-info-editor header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.portal-info-editor header h2{margin:0}
.portal-info-editor fieldset{display:grid;gap:8px;padding:14px;margin:0 0 12px;border:1px solid currentColor;border-radius:8px}
.portal-info-editor fieldset legend{font-weight:700;padding:0 5px}
.portal-info-editor fieldset p{margin:0}
.portal-info-editor input,.portal-info-editor textarea,.portal-info-editor select{max-width:100%;width:100%}
.portal-info-editor .info-project-cover{width:min(100%,135px)}
.portal-info-editor footer{margin-top:18px;padding-top:14px;border-top:1px solid currentColor}
.portal-info-delete{background:transparent;color:#a52729;border:1px solid currentColor;border-radius:6px;padding:.55rem .75rem;font:inherit;font-weight:700;cursor:pointer}
.portal-info-feedback:not(:empty){padding:8px 0}
[data-theme=dark] .portal-info-editor{background:#303030;color:#fff}
[data-theme=dark] .portal-info-delete{color:#ff9c9c}
