/* Présentation compacte : les fonctions restent au même endroit. */
:root { --ink:#343b37; --muted:#686b62; --line:#e0ddd3; }
body { background:#f8f6ef; color:var(--ink); }
.app { max-width:920px; }
.top { padding:16px 18px 4px; }
.logo { font-size:21px; }
.tagline { font-size:12px; margin-top:3px; }
.role-switch { border-radius:10px; background:#eeece4; }
.role-btn { border-radius:7px; font-weight:700; min-height:44px; }
.hero, .role-hero, .role-hero.director {
  background:transparent; color:var(--ink); border:0; border-radius:0;
  padding:12px 0; margin-bottom:12px; box-shadow:none;
}
.hero:after { display:none; }
.hero h1, .role-hero h1 { font-size:24px; font-weight:750; line-height:1.25; margin:0; padding-right:76px; }
.role-hero p, .role-hero.director p { font-size:14px; color:var(--muted); margin-top:5px; }
.grid { gap:10px; }
.action-card { border-radius:12px; padding:16px; min-height:78px; box-shadow:none; }
.action-card.primary { border-color:#e2bc63; background:#fff8e1; }
.action-card strong { font-size:17px; font-weight:750; }
.action-card small { font-size:14px; margin-top:4px; }
.ico { width:40px; height:40px; font-size:22px; border-radius:10px; }
.section-title { font-size:13px; letter-spacing:0; text-transform:none; margin:18px 0 9px; color:var(--ink); }
.card, .voice-card, .finding, .role-card, .cross-column { border-radius:12px; box-shadow:none; }
.photo-box { min-height:170px; border-width:1px; border-radius:12px; }
.photo-box img { background:#f1efe7; }
.photo-placeholder { padding:22px; }
.voice-card { padding:14px; }
.textarea { min-height:90px; border-radius:10px; font-size:16px; }
.btn { border-radius:10px; min-height:44px; font-weight:750; }
.btn:not(.alt):not(.red), .btn.dark, .btn.green, .btn.yellow, #analyzeBtn { box-shadow:none; }
.metric { border-radius:10px; padding:11px 12px; box-shadow:none; }
.metric b { font-size:23px; }
.metric span { font-size:13px; }
.director-main { background:#fff9e6; color:var(--ink); border-color:#e1c987; }
.director-main span { color:var(--muted); }
.score-pill { background:#f2eee1; color:var(--ink); }
.role-card h3 { font-size:19px; }
.role-actions { gap:8px; }
.role-actions .btn { flex:1 1 auto; }
.kiss-details { margin:12px 0; border:1px solid var(--line); border-radius:10px; padding:0 12px; background:#fff; }
.kiss-details > summary { cursor:pointer; padding:12px 0; min-height:44px; font-size:14px; font-weight:650; }
.kiss-details[open] { padding-bottom:12px; }
.kiss-details > .notice { margin:0; font-size:13px; line-height:1.5; }
.kiss-details .section-title { margin-top:0; }
.kiss-privacy { background:transparent; border:0; padding:0; }
.kiss-privacy > summary { color:var(--muted); font-size:13px; }
.kiss-privacy[open] { padding:0 0 12px; }
body .app #radarTerrainHelpBtn.terrain-help-trigger,
body .app .manager-help-trigger, body .app .director-help-trigger {
  background:#fff8df!important; color:#4f4a36!important; border:1px solid #d6c383!important;
  border-radius:8px!important; box-shadow:none!important; min-height:40px; padding:9px 12px!important;
}
button:focus-visible, summary:focus-visible, input:focus-visible, textarea:focus-visible { outline:3px solid #b96d16; outline-offset:3px; }
.role-card, .finding, .cross-column, .status-row { overflow-wrap:anywhere; }
@media (max-width:699px) {
  .hero, .role-hero, .role-hero.director { padding:8px 0; border-radius:0; }
  .hero h1, .role-hero h1 { font-size:22px; padding-right:0; }
  .action-card { padding:14px; }
  .role-actions .btn { flex:1 1 100%; }
  #observe > .row .btn { flex:1 1 auto; }
  .director-card { padding-left:48px; }
  .director-rank { left:12px; }
  .role-card-head { gap:8px; }
  .screen { padding:10px 14px 24px; }
}
