.mem-demo{max-width:820px;margin:0 auto;padding:0 24px 100px;display:flex;flex-direction:column;gap:24px}
.mem-panel{background:rgba(255,255,255,.04);border:1px solid rgba(157,122,255,.25);border-radius:20px;padding:26px}

.mem-label{display:block;font-size:11px;font-weight:800;letter-spacing:.05em;color:var(--muted);margin-bottom:12px}
.mem-input-row{display:flex;gap:8px}
.mem-input-row input{flex:1;background:#140a35;border:1px solid rgba(157,122,255,.25);color:#fff;border-radius:100px;padding:13px 18px;font-family:inherit;font-size:14px}
.mem-mic-btn{width:46px;height:46px;flex:none;border-radius:50%;border:1px solid rgba(157,122,255,.3);background:rgba(157,122,255,.1);cursor:pointer;font-size:18px}
.mem-mic-btn.listening{background:rgba(255,90,90,.2);border-color:rgba(255,90,90,.4);animation:micPulse 1s ease-in-out infinite}
@keyframes micPulse{0%,100%{opacity:1}50%{opacity:.5}}
.mem-mic-btn.unsupported{display:none}
.mem-send-btn{background:linear-gradient(135deg,#6a3bd1,#9d7aff);color:#fff;border:0;border-radius:100px;padding:0 22px;font-weight:800;font-size:13.5px;cursor:pointer}

.mem-clarify{margin-top:16px;display:flex;gap:10px;background:rgba(246,201,74,.08);border:1px solid rgba(246,201,74,.28);border-radius:14px;padding:14px}
.mc-icon{font-size:18px}
.mem-clarify span#mem-clarify-text{font-size:13.5px;color:#f6c94a;line-height:1.6}

.mem-loading{margin-top:14px;text-align:center;color:var(--muted);font-size:13px;font-style:italic}

.mem-confirm{margin-top:18px;background:rgba(139,232,255,.05);border:1px solid rgba(139,232,255,.22);border-radius:14px;padding:18px;opacity:0;transform:translateY(8px);transition:opacity .4s ease,transform .4s ease}
.mem-confirm.visible{opacity:1;transform:none}
.mc-head{font-size:13px;font-weight:800;color:#8be8ff;margin-bottom:12px}
.mc-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mc-grid div{display:flex;flex-direction:column;gap:3px}
.mc-grid span{font-size:10px;color:var(--muted);letter-spacing:.05em}
.mc-grid b{font-size:13.5px;color:#fff}
.mc-created{margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.08);font-size:12.5px;color:#5ad18a;font-weight:700}

/* Ma memoire */
.ml-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.ml-head b{font-size:14px;letter-spacing:.05em}
.ml-head span{font-size:12px;color:var(--muted);font-style:italic}
.ml-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.mf-btn{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);color:var(--muted);border-radius:100px;padding:7px 14px;font-size:11.5px;font-weight:700;cursor:pointer}
.mf-btn.active{background:linear-gradient(135deg,#6a3bd1,#9d7aff);color:#fff;border-color:transparent}

.ml-cards{display:flex;flex-direction:column;gap:12px}
.mem-card{display:flex;gap:12px;background:rgba(255,255,255,.03);border:1px solid rgba(157,122,255,.18);border-radius:14px;padding:14px 16px;opacity:0;transform:translateY(6px);transition:opacity .35s ease,transform .35s ease}
.mem-card.visible{opacity:1;transform:none}
.mem-card .status-dot{width:11px;height:11px;border-radius:50%;flex:none;margin-top:4px}
.status-a_faire .status-dot{background:#5ab4ff}
.status-en_cours .status-dot{background:#f6c94a}
.status-termine .status-dot{background:#5ad18a}
.status-en_attente .status-dot{background:#8a8a9a}
.status-annule .status-dot{background:#5a5a66}
.status-annule .mc-body{text-decoration:line-through;opacity:.55}
.mc-body{flex:1}
.mc-body .mc-quoi{font-size:13.5px;font-weight:700;color:#fff}
.mc-body .mc-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px;font-size:11px;color:var(--muted)}
.mc-body .mc-meta b{color:#c9baf0}
.prio-tag{font-size:9.5px;font-weight:800;letter-spacing:.04em;border-radius:100px;padding:3px 9px}
.prio-faible{background:rgba(255,255,255,.06);color:var(--muted)}
.prio-normale{background:rgba(139,232,255,.1);color:#8be8ff}
.prio-haute{background:rgba(246,201,74,.12);color:#f6c94a}
.prio-critique{background:rgba(255,90,90,.14);color:#ff8a8a}
.mc-source{font-size:10px;color:#8a7ab0;font-style:italic;margin-top:4px}
.mc-actions{display:flex;gap:6px;flex:none}
.mc-actions button{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:var(--muted);border-radius:8px;width:28px;height:28px;font-size:12px;cursor:pointer}
.mc-actions button:hover{background:rgba(255,255,255,.12);color:#fff}
.ml-empty{text-align:center;color:var(--muted);font-size:13px;padding:30px 0;font-style:italic}

@media(max-width:640px){
  .mem-input-row{flex-wrap:wrap}
  .mem-input-row input{width:100%}
  .mc-grid{grid-template-columns:1fr}
}

/* Deadline Engine */
.deadline-alerts{display:flex;flex-direction:column;gap:12px}
.deadline-alert{background:rgba(255,90,90,.06);border:1px solid rgba(255,90,90,.3);border-radius:16px;padding:18px 20px;opacity:0;transform:translateY(-6px);transition:opacity .4s ease,transform .4s ease}
.deadline-alert.visible{opacity:1;transform:none}
.da-head{font-size:13.5px;font-weight:800;color:#ff8a8a;margin-bottom:8px}
.deadline-alert p{margin:0;font-size:13.5px;color:#e3ddfa;line-height:1.6}
.da-actions{display:flex;flex-direction:column;gap:6px;margin-top:12px}
.da-action-row{font-size:12px;color:#c9baf0;background:rgba(255,255,255,.04);border-radius:8px;padding:8px 12px}
.da-demo-note{margin-top:12px;font-size:10.5px;font-weight:800;letter-spacing:.04em;color:#f6c94a}
.btn-check-deadlines{display:block;margin:0 auto 18px;background:rgba(255,90,90,.1);border:1px solid rgba(255,90,90,.3);color:#ff8a8a;border-radius:100px;padding:9px 18px;font-size:12px;font-weight:700;cursor:pointer}

