/* FormaXI v13.3 - floating chat */
.fx-chat-launcher{position:fixed;right:24px;bottom:24px;z-index:1200;width:58px;height:58px;border:1px solid rgba(255,255,255,.12);border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#18c77a,#0da866);color:#fff;box-shadow:0 16px 42px rgba(0,0,0,.34),0 0 0 5px rgba(24,199,122,.08);font-size:25px;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease}.fx-chat-launcher:hover{transform:translateY(-2px);box-shadow:0 20px 48px rgba(0,0,0,.4),0 0 0 6px rgba(24,199,122,.1)}.fx-chat-launcher .fx-chat-count{position:absolute;right:-3px;top:-4px;min-width:21px;height:21px;padding:0 6px;border-radius:999px;display:none;align-items:center;justify-content:center;background:#ef4444;color:#fff;border:2px solid #07111d;font:900 11px/1 system-ui,sans-serif}.fx-chat-launcher .fx-chat-count.show{display:flex}.fx-chat-panel{position:fixed;right:24px;bottom:94px;z-index:1199;width:min(390px,calc(100vw - 32px));height:min(570px,calc(100vh - 130px));display:none;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid rgba(148,163,184,.2);border-radius:18px;background:#0b1726;color:#fff;box-shadow:0 24px 70px rgba(0,0,0,.48);font-family:inherit}.fx-chat-panel.open{display:grid}.fx-chat-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 15px;border-bottom:1px solid rgba(148,163,184,.14);background:#0d1b2b}.fx-chat-title{display:flex;align-items:center;gap:9px;min-width:0}.fx-chat-title strong{font-size:15px}.fx-chat-title small{display:block;color:#8fa3bb;font-size:11px;margin-top:2px}.fx-chat-back,.fx-chat-close{border:0;background:transparent;color:#aebfd1;cursor:pointer;font-size:18px;padding:6px;border-radius:8px}.fx-chat-back:hover,.fx-chat-close:hover{background:rgba(255,255,255,.06);color:#fff}.fx-chat-body{min-height:0;overflow:hidden}.fx-chat-list-view,.fx-chat-conversation-view{height:100%;min-height:0}.fx-chat-list-view{display:grid;grid-template-rows:minmax(0,1fr) auto}.fx-chat-list{overflow:auto;padding:8px}.fx-chat-person{width:100%;display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;align-items:center;border:0;border-radius:12px;padding:10px;background:transparent;color:#fff;text-align:left;cursor:pointer}.fx-chat-person:hover{background:rgba(139,92,246,.09)}.fx-chat-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(139,92,246,.18);color:#ddd6fe;font-weight:900}.fx-chat-copy{min-width:0}.fx-chat-copy strong,.fx-chat-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fx-chat-copy strong{font-size:13px}.fx-chat-copy small{margin-top:3px;color:#8fa3bb;font-size:11px}.fx-chat-meta{display:grid;justify-items:end;gap:5px;color:#8fa3bb;font-size:10px}.fx-chat-mini-count{min-width:18px;height:18px;padding:0 5px;border-radius:999px;display:grid;place-items:center;background:#ef4444;color:#fff;font-weight:900}.fx-chat-footer-link{display:flex;align-items:center;justify-content:center;gap:7px;padding:12px;border-top:1px solid rgba(148,163,184,.13);color:#b9c8d8;text-decoration:none;font-weight:800;font-size:12px}.fx-chat-footer-link:hover{color:#fff;background:rgba(255,255,255,.025)}.fx-chat-empty{height:100%;display:grid;place-content:center;text-align:center;padding:28px;color:#8fa3bb}.fx-chat-empty .icon{font-size:30px;margin-bottom:8px}.fx-chat-conversation-view{display:none;grid-template-rows:minmax(0,1fr) auto}.fx-chat-conversation-view.active{display:grid}.fx-chat-messages{overflow:auto;padding:14px;display:flex;flex-direction:column;gap:7px;background:radial-gradient(circle at 50% 0,rgba(139,92,246,.05),transparent 34%)}.fx-chat-message{display:flex}.fx-chat-message.mine{justify-content:flex-end}.fx-chat-bubble{max-width:82%;padding:9px 11px;border:1px solid rgba(148,163,184,.16);border-radius:14px 14px 14px 5px;background:#091522}.fx-chat-message.mine .fx-chat-bubble{background:rgba(24,199,122,.14);border-color:rgba(24,199,122,.28);border-radius:14px 14px 5px 14px}.fx-chat-bubble p{margin:0;white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.35}.fx-chat-bubble time{display:block;margin-top:4px;color:#7f96ad;font-size:9px;text-align:right}.fx-chat-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px;border-top:1px solid rgba(148,163,184,.14);background:#0d1b2b}.fx-chat-compose textarea{min-height:44px;max-height:90px;resize:none;border:1px solid rgba(148,163,184,.2);border-radius:11px;background:#07131f;color:#fff;padding:10px 11px;font:inherit;font-size:13px;outline:none}.fx-chat-compose textarea:focus{border-color:rgba(24,199,122,.5)}.fx-chat-send{border:0;border-radius:11px;padding:0 14px;background:#18bd73;color:#fff;font-weight:900;cursor:pointer}.fx-chat-send:hover{filter:brightness(1.06)}.fx-chat-loading{height:100%;display:grid;place-items:center;color:#8fa3bb;font-size:12px}.fx-new-chat{position:relative}.fx-new-chat-menu{position:absolute;left:20px;right:20px;top:66px;z-index:20;display:none;max-height:320px;overflow:auto;padding:7px;border:1px solid rgba(148,163,184,.18);border-radius:12px;background:#0a1624;box-shadow:0 18px 42px rgba(0,0,0,.38)}.fx-new-chat-menu.open{display:grid}.fx-new-chat-menu a{display:flex;align-items:center;gap:9px;padding:9px;border-radius:9px;color:#fff;text-decoration:none}.fx-new-chat-menu a:hover{background:rgba(139,92,246,.1)}
@media(max-width:620px){.fx-chat-launcher{right:16px;bottom:16px;width:54px;height:54px}.fx-chat-panel{right:16px;bottom:80px;width:calc(100vw - 32px);height:min(540px,calc(100vh - 105px))}}

/* v13.5 moderation + own-message controls */
.message-tools{display:flex;align-items:center;gap:8px;margin-top:5px;min-height:16px}.message-row.mine .message-tools{justify-content:flex-end}.text-action{border:0;background:transparent;padding:0;color:#8fa3bb;font:700 10px/1.2 inherit;cursor:pointer}.text-action:hover{color:#fff}.text-action.danger{color:#fca5a5}.report-menu{position:relative;font-size:10px;color:#8fa3bb}.report-menu summary{cursor:pointer;list-style:none;font-weight:700}.report-menu form{position:absolute;z-index:40;right:0;top:20px;width:210px;padding:10px;display:grid;gap:8px;background:#0b1726;border:1px solid rgba(148,163,184,.2);border-radius:10px;box-shadow:0 14px 32px rgba(0,0,0,.35)}.report-menu select{width:100%;background:#07131f;color:#fff;border:1px solid rgba(148,163,184,.2);border-radius:8px;padding:8px}.danger-outline{border-color:rgba(239,68,68,.35)!important;color:#fca5a5!important}.fx-chat-delete{display:none}.comment .message-tools{margin-top:8px}

/* v13.5.1: compact 15-minute message delete control */
.chat-bubble.polished,.fx-chat-bubble{position:relative}.message-delete-form{position:absolute;top:4px;right:5px;margin:0;line-height:1}.message-delete-x,.fx-chat-delete-x{display:grid;place-items:center;position:absolute;top:4px;right:5px;width:17px;height:17px;padding:0;border:0;border-radius:50%;background:rgba(239,68,68,.10);color:#f87171;font:900 15px/1 Arial,sans-serif;cursor:pointer;opacity:.72;z-index:2}.message-delete-form .message-delete-x{position:static}.message-delete-x:hover,.fx-chat-delete-x:hover{background:rgba(239,68,68,.20);color:#fecaca;opacity:1}.message-row.mine .chat-bubble.polished:has(.message-delete-x),.fx-chat-message.mine .fx-chat-bubble:has(.fx-chat-delete-x){padding-right:28px}.deleted-message,.deleted-preview{font-style:italic!important;color:#7f91a6!important}.deleted-bubble{opacity:.78}.deleted-bubble p{margin-right:0!important}

/* v13.5.2 report dialog */
.fx-report-backdrop{position:fixed;inset:0;z-index:5000;display:none;place-items:center;padding:20px;background:rgba(2,8,23,.72);backdrop-filter:blur(4px)}
.fx-report-backdrop.open{display:grid}.fx-report-dialog{width:min(430px,94vw);padding:20px;border:1px solid rgba(148,163,184,.22);border-radius:18px;background:#0f1b2c;color:#fff;box-shadow:0 28px 90px rgba(0,0,0,.55)}
.fx-report-dialog h3{margin:0 0 6px;font-size:1.18rem}.fx-report-dialog p{margin:0 0 16px;color:#9fb1c6;font-size:.9rem}.fx-report-dialog select,.fx-report-dialog textarea{width:100%;box-sizing:border-box;margin:0 0 10px;padding:10px 12px;border:1px solid rgba(148,163,184,.22);border-radius:10px;background:#071522;color:#fff;font:inherit}.fx-report-dialog textarea{min-height:88px;resize:vertical}.fx-report-actions{display:flex;justify-content:flex-end;gap:8px}.fx-report-cancel{background:transparent;color:#c3cfdd;border:1px solid rgba(148,163,184,.24);border-radius:9px;padding:9px 12px;cursor:pointer}.fx-report-submit{background:#ef4444;color:#fff;border:0;border-radius:9px;padding:9px 14px;font-weight:900;cursor:pointer}.report-menu>summary{cursor:pointer}

/* shared publication comments dock */
.fx-shared-comments{position:fixed;right:12px;top:142px;z-index:900;width:310px;max-height:calc(100vh - 168px);display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(148,163,184,.22);border-radius:16px;background:#0c1828;color:#fff;box-shadow:0 20px 60px rgba(0,0,0,.32)}
.fx-shared-comments-head{padding:13px 14px;border-bottom:1px solid rgba(148,163,184,.14)}.fx-shared-comments-head strong{display:block;font-size:14px}.fx-shared-comments-head small{display:block;margin-top:3px;color:#8fa3bb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fx-shared-comments-list{min-height:90px;overflow:auto;padding:10px;display:flex;flex-direction:column;gap:8px}.fx-shared-comment{padding:9px 10px;border:1px solid rgba(148,163,184,.14);border-radius:11px;background:#091522}.fx-shared-comment-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.fx-shared-comment strong{font-size:11px;color:#9be8bd}.fx-shared-comment time{font-size:9px;color:#71869c}.fx-shared-comment p{margin:5px 0 0;font-size:12px;line-height:1.35;white-space:pre-wrap;word-break:break-word}.fx-shared-comment-delete{margin-top:5px;border:0;background:transparent;color:#f87171;font-size:10px;cursor:pointer;padding:0}.fx-shared-comments-empty{padding:20px 10px;text-align:center;color:#8196ac;font-size:12px}.fx-shared-comments-compose{padding:10px;border-top:1px solid rgba(148,163,184,.14);background:#0d1b2b}.fx-shared-comments-compose textarea{width:100%;box-sizing:border-box;min-height:62px;max-height:110px;resize:vertical;padding:9px 10px;border:1px solid rgba(148,163,184,.2);border-radius:10px;background:#071522;color:#fff;font:inherit;font-size:12px}.fx-shared-comments-compose button{width:100%;margin-top:7px;border:0;border-radius:9px;padding:9px;background:#18bd73;color:#fff;font-weight:900;cursor:pointer}.fx-shared-comments-note{padding:10px;color:#8fa3bb;font-size:11px;border-top:1px solid rgba(148,163,184,.12)}
@media(max-width:1350px){.fx-shared-comments{right:14px;top:auto;bottom:94px;width:min(340px,calc(100vw - 28px));max-height:55vh}}
@media(min-width:1501px){
  body.fx-has-shared-comments .builder-shell{width:calc(100% - 334px);max-width:none;margin-left:10px;margin-right:324px;padding-left:10px;padding-right:8px}
  body.fx-has-shared-comments .fx-chat-launcher{right:328px}
  body.fx-has-shared-comments .fx-chat-panel{right:328px}
}

/* FormaXI 13.12.12 - teamgebonden reacties onder het gedeelde speelveld */
.shared-comments-host{width:100%;margin-top:0}
.fx-shared-comments{position:static!important;inset:auto!important;z-index:auto!important;width:100%!important;max-height:none!important;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(148,163,184,.20);border-radius:14px;background:#0c1828;color:#fff;box-shadow:none!important}
.fx-shared-comments-head{padding:12px 14px;border-bottom:1px solid rgba(148,163,184,.14);display:flex;align-items:center;justify-content:space-between;gap:12px}
.fx-shared-comments-head strong{display:block;font-size:14px}.fx-shared-comments-head small{display:block;margin-top:3px;color:#8fa3bb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fx-shared-comments-collapse,.fx-shared-more-btn,.fx-shared-reply{border:0;background:transparent;color:#9fb3c8;font-weight:800;font-size:11px;cursor:pointer;padding:5px 7px;border-radius:7px}
.fx-shared-comments-collapse:hover,.fx-shared-more-btn:hover,.fx-shared-reply:hover{background:rgba(255,255,255,.05);color:#fff}
.fx-shared-comments-body{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.fx-shared-comments-list{min-height:0!important;max-height:none!important;overflow:visible!important;padding:10px 12px;display:grid;gap:8px}
.fx-shared-comment{padding:9px 10px;border:1px solid rgba(148,163,184,.14);border-radius:10px;background:#091522}
.fx-shared-comment-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.fx-shared-comment strong{font-size:11px;color:#9be8bd}.fx-shared-comment time{font-size:9px;color:#71869c}.fx-shared-comment p{margin:5px 0 0;font-size:12px;line-height:1.4;white-space:pre-wrap;word-break:break-word}
.fx-shared-comment-tools{display:flex;gap:5px;align-items:center;margin-top:5px}.fx-shared-comment-delete{border:0;background:transparent;color:#f87171;font-size:10px;font-weight:800;cursor:pointer;padding:5px 7px;border-radius:7px}.fx-shared-comment-delete:hover{background:rgba(248,113,113,.08)}
.fx-official-check{display:inline-grid;place-items:center;width:14px;height:14px;border-radius:50%;background:#3b82f6;color:#fff;font-size:9px}
.fx-shared-comments-more{padding:0 12px 8px}.fx-shared-more-btn{color:#c4b5fd;padding-left:0}
.fx-shared-comments-empty{padding:18px 10px;text-align:center;color:#8196ac;font-size:12px}.fx-shared-comments-compose{padding:10px 12px;border-top:1px solid rgba(148,163,184,.14);background:#0d1b2b;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.fx-shared-comments-compose textarea{width:100%;box-sizing:border-box;min-height:48px;max-height:96px;resize:vertical;padding:9px 10px;border:1px solid rgba(148,163,184,.2);border-radius:9px;background:#071522;color:#fff;font:inherit;font-size:12px}.fx-shared-comments-compose button{width:auto!important;margin:0!important;border:0;border-radius:9px;padding:10px 16px;background:#18bd73;color:#fff;font-weight:900;cursor:pointer}.fx-shared-comments-error{grid-column:1/-1;color:#fca5a5;font-size:11px}.fx-shared-comments-note{padding:10px 12px;color:#8fa3bb;font-size:11px;border-top:1px solid rgba(148,163,184,.12)}
@media(max-width:760px){.fx-shared-comments-compose{grid-template-columns:1fr}.fx-shared-comments-compose button{width:100%!important}.shared-comments-host{margin-top:0}}

/* FormaXI 6.2.2 - teamreacties direct onder het speelveld */
@media(min-width:901px){
  .workspace > .shared-comments-host{grid-area:comments!important;width:100%!important;margin-top:0!important;align-self:start!important}
}
@media(max-width:900px){
  .workspace > .shared-comments-host{width:100%!important}
}
.fx-shared-comment-tools{display:flex;align-items:center;gap:8px;margin-top:7px}.fx-shared-like{border:0;background:transparent;color:#94a3b8;font-size:11px;font-weight:900;cursor:pointer;padding:5px 6px;border-radius:7px}.fx-shared-like:hover{background:rgba(255,255,255,.05)}.fx-shared-like.is-liked{color:#fb7185}.fx-shared-comment-delete{margin-top:0!important}

/* FormaXI 6.2.11 - rapporteren bij teamreacties */
.fx-shared-report{border:0;background:transparent;color:#94a3b8;font-size:10px;font-weight:800;cursor:pointer;padding:5px 7px;border-radius:7px}.fx-shared-report:hover{background:rgba(148,163,184,.08);color:#dbe7f5}
/* 8.6.0 – publication/tactic sharing */
.publication-report-menu{display:inline-block}.publication-report-menu>summary.btn{list-style:none}.publication-report-menu>summary::-webkit-details-marker{display:none}.publication-report-menu textarea{width:100%;box-sizing:border-box;min-height:72px;resize:vertical;background:#07131f;color:#fff;border:1px solid rgba(148,163,184,.2);border-radius:8px;padding:8px;font:inherit}

/* FormaXI 8.7.0 - community safety feedback */
.fx-chat-moderation{margin:8px 10px 0;padding:8px 10px;border:1px solid rgba(248,113,113,.28);border-radius:9px;background:rgba(127,29,29,.20);color:#fecaca;font-size:.74rem}
.fx-chat-moderation[hidden]{display:none!important}
.fx-chat-moderation.is-warning{border-color:rgba(250,204,21,.30);background:rgba(113,63,18,.20);color:#fde68a}
.fx-shared-comments-error.is-warning{color:#fde68a}
