/* Small additions to the exact production Mission 019 stylesheet. */
:root {
  --muted: #566276;
  --control-border: #78849a;
  --menu-text: var(--ink);
  --menu-background: var(--surface);
  --menu-hover-background: var(--primary-soft);
  --focus-on-light: var(--primary);
  --focus-on-dark: #f5b942;
}
[hidden] { display: none !important; }
.pilot-badge { font-size: .6rem; letter-spacing: .06em; color: #dbe7f8; }
.app-header { flex-wrap: wrap; }
.app-header nav { flex-wrap: wrap; }
.tools-menu { position: relative; font-size: .85rem; }
.tools-menu summary { cursor: pointer; padding: .5rem; }
.tools-menu a { display: block; padding: .5rem; }
.app-header .tools-menu[open] { background: var(--menu-background); color: var(--menu-text); border: 1px solid var(--control-border); border-radius: var(--radius); }
.app-header .tools-menu a { color: var(--menu-text); background: var(--menu-background); }
.app-header .tools-menu a:hover,
.app-header .tools-menu a:focus-visible,
.app-header .tools-menu a:active { color: var(--primary-dark); background: var(--menu-hover-background); }
:focus-visible { outline-color: var(--focus-on-light); }
.app-header :focus-visible { outline-color: var(--focus-on-dark); }
.app-header .tools-menu[open] :focus-visible { outline-color: var(--focus-on-light); }
.contact-list .inactive { opacity: 1; color: var(--muted); }
.field input:not([type=checkbox]), .field select, .field textarea,
.campaign-add-form select, .inline-form select,
.button-secondary { border-color: var(--control-border); }
input, select, textarea { color: var(--ink); background-color: var(--surface); }
option { color: var(--ink); background-color: var(--surface); }
input::placeholder, textarea::placeholder { color: var(--muted); opacity: 1; }
.button:disabled { opacity: 1; cursor: not-allowed; border-style: dashed; }
.page-shell { overflow-wrap: anywhere; }
input[type=checkbox], input[type=radio] { accent-color: var(--primary); }
.tools-menu a, .button { overflow-wrap: anywhere; }
.search-tools { display: flex; flex-wrap: wrap; gap: .7rem; margin-bottom: 1rem; align-items: center; }
.search-tools form { padding: .75rem; }
.natural-search, .intent-panel { border: 1px solid var(--line); border-radius: var(--radius); padding: 1.25rem; margin-bottom: 1rem; background: var(--surface); }
.natural-search textarea { width: 100%; }
.intent-panel dl { display: flex; flex-wrap: wrap; gap: 1rem; }
.intent-panel dd { margin-left: 0; }
.intent-panel button, .sol-chat button { white-space: normal; }
.company-disclosure, .sol-chat { overflow-wrap: anywhere; }
.sol-chat textarea { width: 100%; }
.sol-messages { max-height: 36rem; overflow: auto; }
.sol-message, .sol-source { padding: .8rem; margin: .6rem 0; border: 1px solid var(--line); border-radius: var(--radius); }
.sol-message-text { white-space: pre-wrap; }
.sol-quick-actions { display: flex; flex-wrap: wrap; gap: .5rem; }
.pagination, .pagination-links, .company-pagination { display: flex; flex-wrap: wrap; gap: .5rem; }
.company-fiche .overview-card { border-radius: var(--radius); border-color: var(--line); }
.calendar-days { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%,220px),1fr)); gap: 1rem; }
input, select, textarea, .info-card, .panel { min-width: 0; max-width: 100%; }
.sol-activity input { width: auto; }
.activity-type-filter { min-width: 0; margin: 0 0 1rem; padding: .75rem; border: 1px solid var(--line); border-radius: var(--radius); }
.activity-type-filter legend { font-weight: 700; padding: 0 .3rem; }
.activity-type-filter > div { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; }
.activity-type-filter label { display: flex; align-items: center; gap: .5rem; min-height: 44px; cursor: pointer; }
.activity-type-filter input[type="checkbox"] { width: 20px; height: 20px; flex: 0 0 20px; margin: 0; }
@media(max-width:680px) { .user-menu { flex-wrap: wrap; margin-left: 0; } .tools-menu { order: 4; } .search-tools { align-items: stretch; flex-direction: column; } }
