
:root{
  color-scheme:light;
  --green:#0f6259;
  --green-dark:#0a4942;
  --green-soft:#eaf6f3;
  --text:#203632;
  --muted:#697a77;
  --line:#d7e4e1;
  --surface:#ffffff;
  --bg:#f2f7f6;
  --danger:#8c2f2f;
  --danger-soft:#fff0f0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text)}
body{padding:18px 12px 32px}
button{font:inherit}
.recovery-shell{width:min(760px,100%);margin:0 auto;display:grid;gap:14px}
.recovery-card{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:18px;
  padding:18px;
  box-shadow:0 10px 28px rgba(22,74,66,.06);
}
.brand-line{display:flex;align-items:center;gap:13px}
.app-icon{width:54px;height:54px;border-radius:14px;object-fit:cover}
.eyebrow{display:block;color:var(--green);font-size:10px;font-weight:900;letter-spacing:.7px}
h1,h2,h3,p{margin:0}
h1{margin-top:3px;font-size:22px;line-height:1.18}
h2{font-size:17px}
h3{font-size:12px}
.lead{margin-top:16px;color:var(--muted);font-size:13px;line-height:1.55}
.safe-banner{
  margin-top:16px;
  display:grid;
  gap:3px;
  padding:12px 13px;
  border-radius:12px;
  background:var(--green-soft);
  color:var(--green-dark);
  font-size:12px;
  line-height:1.45;
}
.safe-banner strong{font-size:12.5px}
.primary-btn,.secondary-btn{
  width:100%;
  min-height:48px;
  margin-top:16px;
  border-radius:12px;
  font-weight:850;
  cursor:pointer;
}
.primary-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;
  border:1px solid var(--green);
  background:var(--green);
  color:#fff;
}
.secondary-btn{
  border:1px solid #bfd4d0;
  background:#f8fbfa;
  color:var(--green-dark);
}
.primary-btn:disabled,.secondary-btn:disabled{opacity:.55;cursor:not-allowed}
.result-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.count-badge{
  flex:0 0 auto;
  padding:7px 9px;
  border-radius:999px;
  background:var(--green-soft);
  color:var(--green);
  font-size:10px;
  font-weight:900;
}
.summary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:14px;
}
.summary-tile{
  padding:11px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fbfdfd;
}
.summary-tile strong{display:block;font-size:18px;color:var(--green-dark)}
.summary-tile span{display:block;margin-top:2px;color:var(--muted);font-size:9.5px;font-weight:750}
.centers-box{
  margin-top:14px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fbfdfd;
}
.center-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.center-tag{
  padding:6px 8px;
  border-radius:999px;
  background:var(--green-soft);
  color:var(--green-dark);
  font-size:9.5px;
  font-weight:850;
}
.records-list{display:grid;gap:8px;margin-top:14px}
.record{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px 12px;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
}
.record-main{min-width:0}
.record-main strong{display:block;font-size:11px;overflow-wrap:anywhere}
.record-main span{display:block;margin-top:3px;color:var(--muted);font-size:9px;line-height:1.35}
.record-kind{
  align-self:start;
  padding:5px 7px;
  border-radius:999px;
  background:#eef5f3;
  color:#46635e;
  font-size:8px;
  font-weight:900;
  white-space:nowrap;
}
.empty-state{
  margin-top:14px;
  padding:16px;
  border:1px dashed #deb8b8;
  border-radius:12px;
  background:var(--danger-soft);
  color:var(--danger);
  font-size:11px;
  line-height:1.5;
}
.empty-state strong,.empty-state span{display:block}
.empty-state span{margin-top:5px}
.export-panel{margin-top:16px}
.privacy-note{
  padding:11px 12px;
  border-radius:11px;
  background:#fff8e7;
  color:#70551a;
  font-size:10.5px;
  line-height:1.45;
}
.help-text{margin-top:8px;text-align:center;color:var(--muted);font-size:9.5px}
.warning-list{display:grid;gap:7px;margin-top:12px}
.warning-list span{
  position:relative;
  padding-left:18px;
  color:var(--muted);
  font-size:11px;
  line-height:1.4;
}
.warning-list span::before{
  content:"!";
  position:absolute;left:0;top:0;
  width:13px;height:13px;border-radius:50%;
  display:grid;place-items:center;
  background:var(--danger-soft);color:var(--danger);
  font-size:8px;font-weight:950;
}
footer{text-align:center;color:#81908d;font-size:9px;padding:4px 0}
[hidden]{display:none!important}

@media(max-width:600px){
  body{padding:10px 8px 24px}
  .recovery-card{padding:14px;border-radius:15px}
  h1{font-size:18px}
  .app-icon{width:46px;height:46px}
  .summary-grid{grid-template-columns:1fr 1fr}
  .summary-tile:last-child{grid-column:1/-1}
  .record{grid-template-columns:1fr}
  .record-kind{justify-self:start}
}


/* 6.14 — récupération légère ciblée */
.recovery-filter-box{
  margin-top:12px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fbfdfd;
}
.recovery-filter-box label{
  display:grid;
  gap:6px;
  color:var(--text);
  font-size:10px;
  font-weight:850;
}
.recovery-filter-box input{
  width:100%;
  min-height:42px;
  border:1px solid #cbdad7;
  border-radius:10px;
  padding:9px 10px;
  background:#fff;
  color:var(--text);
  font:inherit;
  font-size:12px;
}
.secondary-btn.compact{
  margin-top:9px;
  min-height:40px;
}
.secondary-btn.ghostish{
  background:#fff;
  border-style:dashed;
}
.record.is-current{
  opacity:.72;
}
.record.is-match{
  border-color:#7bb9ae;
  background:#f1faf7;
}
.record-flag{
  display:inline-block;
  margin-top:5px;
  padding:3px 6px;
  border-radius:999px;
  background:#e8f6f2;
  color:#0f6259;
  font-size:8px;
  font-weight:900;
}


/* v03.09.26-14 */
.back-link{display:inline-flex;align-items:center;min-height:40px;color:var(--green-dark);font-size:11px;font-weight:850;text-decoration:none;padding:0 4px;}
.record-download{grid-column:1/-1;justify-self:start;border:1px solid #bfd4d0;background:#f7fbfa;color:var(--green-dark);border-radius:9px;padding:7px 9px;font-size:9px;font-weight:850;cursor:pointer;}
