.is-confidential .availability{color:#a32130}
.status-pill{font-weight:650}
body.portal-editing{padding-bottom:300px}
.app-card.is-editing{outline:2px dashed #8ba4c8;outline-offset:3px;position:relative}
.drag-handle,.section-handle{display:inline-flex;align-items:center;cursor:grab;user-select:none;font:600 .75rem system-ui,sans-serif;color:#173d74;background:#fff;border:1px solid #173d74;border-radius:999px;padding:2px 9px}
.drag-handle{position:absolute;top:8px;left:8px;z-index:2}
.app-card.is-editing{padding-top:44px}
.app-card.is-editing [contenteditable]{border-radius:6px;outline:none;cursor:text}
.app-card.is-editing [contenteditable]:focus{background:#fff8;box-shadow:0 0 0 2px #173d74}
.app-card.is-editing .description.bad{box-shadow:0 0 0 2px #c92332;color:#a32130}
.app-card.is-editing.dragging{opacity:.5}
.card-menu-btn{position:absolute;top:8px;right:8px;z-index:2;border:1px solid #173d74;background:#fff;color:#173d74;border-radius:999px;padding:3px 9px;font:600 .75rem system-ui,sans-serif;cursor:pointer}
.app-group.is-editing{outline:1px dashed #b9c4d3;outline-offset:6px;border-radius:14px;padding-bottom:4px}
.app-group.is-editing .group-heading:focus{outline:2px solid #173d74;background:#fff}
.app-group.dragover-section{outline-color:#087462}
.section-tools{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:8px 0 0;font:500 .75rem system-ui,sans-serif;color:#526176}
.section-tools label{display:inline-flex;align-items:center;gap:4px}
.drop-hint{grid-column:1/-1;border:2px dashed #b9c4d3;border-radius:14px;padding:24px;text-align:center;color:#526176;margin:0}
.mini{font:600 .75rem system-ui,sans-serif;border:1px solid #173d74;background:#fff;color:#173d74;border-radius:8px;padding:4px 8px;cursor:pointer}
.mini:disabled{opacity:.4;cursor:not-allowed}
.mini.danger{border-color:#c92332;color:#c92332}
.card-menu-panel{position:fixed;z-index:80;width:min(300px,calc(100vw - 24px));background:#fff;color:#112b51;border:1px solid #dde3ec;border-radius:14px;box-shadow:0 14px 34px #0005;padding:14px;display:grid;gap:8px;font:500 .8125rem system-ui,sans-serif}
.card-menu-panel label{font-size:.6875rem;color:#526176;font-weight:650;text-transform:uppercase;letter-spacing:.04em}
.card-menu-panel select,.card-menu-panel input{font:inherit;padding:7px 9px;border:1px solid #b9c4d3;border-radius:8px;width:100%;box-sizing:border-box;background:#fff;color:inherit}
.card-menu-panel .row{display:flex;flex-wrap:wrap;gap:6px}
#portalEditBar{position:fixed;left:0;right:0;bottom:0;z-index:70;background:#fff;color:#112b51;border-top:1px solid #dde3ec;box-shadow:0 -10px 30px #0002;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));max-height:55vh;overflow:auto;display:grid;gap:8px;font:500 .8125rem system-ui,sans-serif}
#portalEditBar .bar-hint{margin:0;color:#526176;font-size:.75rem}
#portalEditBar .bar-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
#portalEditBar .bar-row.end{justify-content:flex-end}
#portalEditBar input,#portalEditBar select{font:inherit;padding:7px 9px;border:1px solid #b9c4d3;border-radius:8px;flex:1 1 180px;min-width:0;background:#fff;color:inherit}
#portalEditBar button{font:inherit;font-weight:600;padding:7px 12px;border-radius:8px;border:1px solid #173d74;background:#fff;color:#173d74;cursor:pointer}
#portalEditBar button.primary{background:#173d74;color:#fff}
#portalEditBar button:disabled{opacity:.45;cursor:not-allowed}
#portalEditBar .preview-box{display:grid;gap:6px;border:1px solid #dde3ec;border-radius:12px;padding:10px}
#portalEditBar .preview-box img{width:100%;max-height:140px;object-fit:cover;border-radius:10px;background:#eef2f7}
#portalEditBar .hint{margin:0;color:#526176;font-size:.75rem}
#portalToast{position:fixed;left:50%;top:16px;transform:translateX(-50%);z-index:90;background:#173d74;color:#fff;padding:12px 18px;border-radius:12px;font:500 .875rem system-ui,sans-serif;max-width:90vw;text-align:center}
