/* Optional tools use the same QG palette; their heavy code loads on demand. */
.form-help{font-size:12px;line-height:1.6;color:var(--muted);margin:0}
.board-open{width:100%;margin-top:18px;min-height:44px}
.agenda-filter{display:flex;align-items:center;gap:14px;margin:0 0 20px;flex-wrap:wrap;font-size:13px}
.agenda-filter label{font-weight:600}
.agenda-filter select{min-height:44px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--text);padding:10px 14px;font:inherit}
.agenda-filter .muted{flex:1;min-width:220px;line-height:1.6}
.calendar-panel{padding:22px;--fc-border-color:#29405d;--fc-page-bg-color:#111c2b;--fc-neutral-bg-color:#172b43;--fc-list-event-hover-bg-color:#1d3552;--fc-today-bg-color:#163c64;--fc-button-bg-color:#1a3555;--fc-button-border-color:#294f78;--fc-button-hover-bg-color:#254c76;--fc-button-hover-border-color:#3975af;--fc-button-active-bg-color:#2862a2;--fc-button-active-border-color:#488ee0;--fc-event-bg-color:#214d7f;--fc-event-border-color:#4680bb;--fc-event-text-color:#e1efff}
#calendarLoading{padding:20px;color:var(--muted)}
.fc .fc-toolbar-title{font-size:20px;overflow-wrap:anywhere}
.fc .fc-button{font-family:inherit;min-height:40px;font-size:13px}
.fc .fc-list-event-title,.fc .fc-event-title{overflow-wrap:anywhere}
.fc .fc-list-event-title a{white-space:normal}
.fc .fc-list-day-cushion,.fc .fc-col-header-cell-cushion{color:#cde5ff}
.fc .task-status-done{opacity:.65}
.fc .task-status-done .fc-event-title,.fc .task-status-done .fc-list-event-title{text-decoration:line-through}
.fc .fc-list-empty{background:transparent;color:var(--muted);padding:30px}
.agenda-note{color:var(--muted);font-size:13px;line-height:1.6;margin-top:18px}
.notification-button{position:relative;flex:none;font-size:23px}
.notification-button svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.8}
.notification-count{position:absolute;right:-3px;top:-3px;min-width:18px;height:18px;padding:1px 4px;border-radius:12px;background:#5d9bff;color:#061426;font-size:10px;font-weight:700;display:grid;place-items:center}
.notification-count[hidden]{display:none}
.notification-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:16px}
.notification-toolbar p{margin:0;line-height:1.6}
.notification-item{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:7px;text-align:left;border:1px solid var(--line);background:#101c2c;color:var(--text);border-radius:10px;padding:16px;margin-bottom:10px;font:inherit;overflow-wrap:anywhere}
.notification-item.unread{border-color:#4285d0;background:#142b47}
.notification-item strong{font-size:14px}
.notification-item span{font-size:13px;line-height:1.5}
.notification-item small{color:var(--muted);font-size:11px}
.push-settings{margin-top:24px;border-top:1px solid var(--line);padding-top:20px}
.push-settings h3{font-size:16px;margin:0 0 12px}
.push-settings p{line-height:1.6}
.push-actions{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
.push-actions .button{min-height:44px}
.note-editor-field>label{display:block;margin-bottom:9px}
#noteEditor{min-height:220px}
.board-modal-root{padding:16px}
.board-modal-root .modal.large{width:min(1600px,calc(100vw - 32px));height:calc(100dvh - 32px);max-height:calc(100dvh - 32px);display:flex;flex-direction:column}
.board-modal-root .modal-head{padding:14px 20px;flex:none}
.board-modal-root .modal-head h2{font-size:20px}
.board-modal-root .modal-body{padding:0;overflow:hidden;display:flex;flex-direction:column;flex:1;min-height:0}
.board-workspace-header{padding:8px 16px;background:#101d30;border-bottom:1px solid #29405d;flex:none;font-size:12px;line-height:1.5;color:#a6c6ed}
.board-session-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.board-session-expired .board-workspace-header{background:#302719;border-color:#8d6630;color:#f4d695}
.board-session-actions .button{min-height:44px}
#boardEditor{flex:1;min-height:0;position:relative;width:100%}
@media(max-width:780px){
  .top-actions{gap:8px}
  .notification-button{min-width:40px;min-height:44px}
  .agenda-filter{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px}
  .agenda-filter select{font-size:16px;min-width:0}
  .agenda-filter .muted{grid-column:1/-1;min-width:0;font-size:12px}
  .calendar-panel{padding:12px;overflow:hidden}
  .fc .fc-header-toolbar{display:flex;flex-wrap:wrap;gap:12px}
  .fc .fc-toolbar-chunk:nth-child(2){width:100%;order:-1;text-align:center}
  .fc .fc-toolbar-title{font-size:19px}
  .fc .fc-button{min-height:44px;padding:6px 10px;font-size:12px}
  .fc .fc-list-day-cushion{padding:10px 8px;font-size:12px}
  .fc .fc-list-event td{padding:12px 8px;font-size:13px}
  .fc .fc-list-event-time{font-size:11px;white-space:normal}
  .fc .fc-daygrid-day-number{padding:6px}
  .fc .fc-col-header-cell-cushion{font-size:11px;padding:7px 2px}
  .fc .fc-daygrid-event{font-size:10px}
  .push-actions{display:grid;grid-template-columns:1fr}
  .notification-toolbar{display:grid;gap:10px}
  .notification-toolbar .text-button{text-align:left;min-height:44px}
  .board-modal-root{padding:0}
  .board-modal-root .modal.large{width:100%;height:100%;max-height:100%;border-radius:0}
  .board-modal-root .modal-head{padding:12px 14px}
  .board-modal-root .modal-head h2{font-size:17px;max-height:60px}
  .board-workspace-header{padding:7px 12px;font-size:11px}
}
