/* « Accueil » and the search (A-35): cockpit tokens inside the cockpit, the application's outside it. */
body.ki-at-home .ki-heading{display:none}
.hm{display:flex;flex-direction:column;gap:18px;min-width:0}
.hm-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px}
.hm-head h2{margin:0;font-size:28px;font-weight:800;letter-spacing:-.6px;color:var(--ki-text)}
.hm-head p{margin:3px 0 0;color:var(--ki-muted);font-size:13px}
.hm-fresh{display:flex;flex-wrap:wrap;gap:8px}
.hm-fresh span{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--ki-body);background:var(--ki-card);border:1px solid var(--ki-line);border-radius:99px;padding:6px 12px}
.hm-fresh .ki-i{width:15px;height:15px;color:var(--ki-muted)}
.hm-ask{display:flex;align-items:center;gap:10px;background:var(--ki-card);border:1px solid var(--ki-line);border-radius:14px;padding:8px 8px 8px 16px;box-shadow:var(--ki-shadow)}
.hm-ask>.ki-i{color:#B8891A}
.hm-ask input{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:15px;color:var(--ki-text);padding:8px 0}
.hm-ask input:focus{outline:none}
.hm-ask:focus-within{border-color:var(--ki-teal)}
#indicators-host .hm-ask button{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:11px;background:linear-gradient(135deg,#C8384A 0%,#B11E2F 60%,#8E1625 100%);color:#fff;padding:0}
.hm-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
#indicators-host .hm-kpi{display:flex;flex-direction:column;align-items:stretch;gap:6px;text-align:left;background:var(--ki-card);border:1px solid var(--ki-line);border-radius:var(--ki-r);padding:14px 16px 10px;box-shadow:var(--ki-shadow);min-width:0;min-height:132px}
#indicators-host .hm-kpi:hover{border-color:var(--ki-teal)}
.hm-kpi-label{font-size:10.5px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--ki-muted)}
.hm-kpi-value{font-size:24px;font-weight:800;color:var(--ki-text);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.hm-kpi-value small{font-size:13px;font-weight:600;color:var(--ki-muted);margin-left:2px}
.hm-kpi-move{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:12px;min-height:16px}
.hm-kpi .ki-spark{width:100%;height:30px;margin-top:auto}
.hm-ghost{animation:hmPulse 1.4s ease-in-out infinite alternate;background:var(--ki-soft)!important}
@keyframes hmPulse{from{opacity:.55}to{opacity:1}}
.hm-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:14px;align-items:start}
.hm-card,.hm-boards-wrap{background:var(--ki-card);border:1px solid var(--ki-line);border-radius:var(--ki-r);padding:14px 16px;box-shadow:var(--ki-shadow);min-width:0}
.hm-boards-wrap{background:transparent;border:0;box-shadow:none;padding:0}
.hm-card header,.hm-boards-wrap header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}
.hm-card h3,.hm-boards-wrap h3{margin:0;font-size:15.5px;font-weight:700;color:var(--ki-text)}
.hm-count{font-size:11.5px;font-weight:700;color:var(--ki-muted);background:var(--ki-soft);border-radius:99px;padding:2px 9px}
.hm-count:empty{display:none}
#indicators-host .hm-link{border:0;background:transparent;padding:4px 2px;color:var(--ki-teal);font-weight:600;font-size:12.8px;white-space:nowrap}
.hm-watches,.hm-convs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.hm-watch{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 0;border-top:1px solid var(--ki-line)}
.hm-watch:first-child{border-top:0}
.hm-watch-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--ki-soft);color:var(--ki-slate)}
.hm-watch.missed .hm-watch-icon{color:var(--ki-red)}
.hm-watch.atypical .hm-watch-icon{color:var(--ki-teal)}
.hm-watch.missing .hm-watch-icon{color:var(--ki-gold)}
.hm-watch-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.hm-watch-text strong{font-size:13.6px;color:var(--ki-text);font-weight:600}
.hm-watch-text small{font-size:12px;color:var(--ki-muted)}
.hm-tag{align-self:flex-start;font-size:10.5px;font-weight:700;border-radius:6px;padding:1px 7px;background:var(--ki-soft);color:var(--ki-slate)}
.hm-tag.missed{color:var(--ki-red)}
.hm-empty{color:var(--ki-muted);font-size:13px;padding:10px 0;list-style:none}
#indicators-host .hm-convs button{display:flex;gap:12px;align-items:flex-start;width:100%;text-align:left;border:0;background:transparent;padding:9px 4px;border-radius:9px}
#indicators-host .hm-convs button:hover{background:var(--ki-soft)}
.hm-convs .ki-i{color:var(--ki-teal);margin-top:2px}
.hm-convs span{display:flex;flex-direction:column;gap:2px;min-width:0}
.hm-convs strong{font-size:13.4px;color:var(--ki-text);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hm-convs small{font-size:11.8px;color:var(--ki-muted)}
.hm-boards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
#indicators-host .hm-board{display:flex;gap:12px;align-items:center;text-align:left;background:var(--ki-card);border:1px solid var(--ki-line);border-radius:var(--ki-r);padding:14px;box-shadow:var(--ki-shadow);min-width:0}
.hm-board .ki-i{width:20px;height:20px;color:var(--ki-red);flex:none}
.hm-board span{display:flex;flex-direction:column;min-width:0}
.hm-board strong{font-size:13.4px;color:var(--ki-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hm-board small{font-size:11.5px;color:var(--ki-muted)}
@media(max-width:1280px){.hm-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.hm-grid{grid-template-columns:minmax(0,1fr)}.hm-boards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.hm-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.hm-head h2{font-size:23px}.hm-kpi-value{font-size:20px}}
@media(prefers-reduced-motion:reduce){.hm-ghost{animation:none}}

/* The search field in the header and its list. */
.app-search{display:none;align-items:center;gap:9px;min-width:0;width:min(300px,22vw);margin-left:auto;font:13px Inter,system-ui,sans-serif;color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border-main);border-radius:10px;padding:8px 10px;cursor:pointer;white-space:nowrap;overflow:hidden}
.app-search span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;text-align:left}
.app-search kbd{font:600 11px Inter,system-ui,sans-serif;border:1px solid var(--border-main);border-radius:5px;padding:1px 6px}
.app-search:focus-visible{outline:2px solid #0F7B8A;outline-offset:2px}
body.cockpit-places .app-search{display:flex}
@media(max-width:1400px){body.cockpit-places .app-search{width:auto}.app-search span,.app-search kbd{display:none}}
/* With the places in the header, the source keeps its name only. */
body.cockpit-places .source-switcher-label{display:none}
.sp-scrim{position:fixed;inset:0;z-index:400;background:rgba(10,17,29,.45);display:flex;justify-content:center;align-items:flex-start;padding:10vh 16px 16px}
.sp-panel{width:min(640px,100%);max-height:70vh;display:flex;flex-direction:column;background:var(--bg-surface-solid);border:1px solid var(--border-main);border-radius:14px;box-shadow:0 24px 60px rgba(10,17,29,.35);overflow:hidden;font-family:Inter,system-ui,sans-serif}
.sp-field{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--border-main);color:var(--text-muted)}
.sp-field input{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:15px;color:var(--text-title)}
.sp-field input:focus{outline:none}
.sp-field kbd{font:600 11px Inter,system-ui,sans-serif;border:1px solid var(--border-main);border-radius:5px;padding:1px 6px}
.sp-list{list-style:none;margin:0;padding:6px;overflow:auto}
.sp-group{font-size:10.5px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);padding:10px 10px 4px}
.sp-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:9px;color:var(--text-title);font-size:13.6px;cursor:pointer}
.sp-item .ki-i{color:var(--text-muted)}
.sp-item.on{background:var(--bg-card-hover)}
.sp-item.on .ki-i{color:#B11E2F}
.sp-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sp-item small{color:var(--text-muted);font-size:12px;white-space:nowrap}
.sp-none{padding:14px;color:var(--text-muted);font-size:13px}

/* « Rapports prêts » on « Accueil » and the « Rapports » page (A-36). */
.hm-reports-wrap header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}
.hm-reports-wrap h3{margin:0;font-size:15.5px;font-weight:700;color:var(--ki-text)}
.hm-reports{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.hm-reports .hm-empty{grid-column:1/-1;margin:0;padding:6px 0}
#indicators-host .hm-report{display:flex;gap:12px;align-items:center;text-align:left;background:var(--ki-card);border:1px solid var(--ki-line);border-radius:var(--ki-r);padding:13px 14px;box-shadow:var(--ki-shadow);min-width:0}
.hm-report .ki-i{width:20px;height:20px;color:var(--ki-slate);flex:none}
.hm-report span{display:flex;flex-direction:column;min-width:0}
.hm-report strong{font-size:13.4px;color:var(--ki-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hm-report small{font-size:11.5px;color:var(--ki-muted)}
@media(max-width:900px){.hm-reports{grid-template-columns:minmax(0,1fr)}}
.rp{display:flex;flex-direction:column;gap:14px;min-width:0}
.rp-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.rp-search{display:flex;align-items:center;gap:8px;flex:1;min-width:220px;max-width:420px;background:var(--ki-card);border:1px solid var(--ki-line);border-radius:10px;padding:0 10px;color:var(--ki-muted)}
.rp-search input{flex:1;min-width:0;border:0;background:transparent;font:inherit;color:var(--ki-text);padding:9px 0}
.rp-search input:focus{outline:none}
.rp-search:focus-within{border-color:var(--ki-teal)}
.rp-chips{display:inline-flex;background:var(--ki-soft);border-radius:10px;padding:3px;gap:2px}
#indicators-host .rp-chips button{border:0;background:transparent;color:var(--ki-muted);font-weight:600;font-size:12.5px;padding:6px 12px;border-radius:8px}
#indicators-host .rp-chips button[aria-pressed=true]{background:var(--ki-card);color:var(--ki-text);box-shadow:var(--ki-shadow)}
.rp-card{background:var(--ki-card);border:1px solid var(--ki-line);border-radius:var(--ki-r);padding:14px 16px;box-shadow:var(--ki-shadow);min-width:0}
.rp-form{display:flex;flex-direction:column;gap:12px}
.rp-field{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600;color:var(--ki-muted)}
.rp-field input,.rp-field select{font:inherit;font-size:13.5px;font-weight:500;color:var(--ki-text);background:var(--ki-bg);border:1px solid var(--ki-line);border-radius:9px;padding:8px 10px}
.rp-boards{border:0;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px 18px}
.rp-boards legend{font-size:12px;font-weight:600;color:var(--ki-muted);margin-bottom:6px;padding:0}
.rp-boards div{display:flex;flex-direction:column;gap:4px;min-width:0}
.rp-boards strong{font-size:10.5px;letter-spacing:1px;text-transform:uppercase;color:var(--ki-muted)}
.rp-boards label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ki-text);cursor:pointer}
.rp-boards label .ki-i{width:15px;height:15px;color:var(--ki-slate)}
.rp-form-foot{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}
.rp-grain{width:150px}
.rp-period{font-size:13px;color:var(--ki-muted);padding-bottom:9px}
#indicators-host .rp-primary{margin-left:auto;border:0;background:linear-gradient(135deg,#C8384A 0%,#B11E2F 60%,#8E1625 100%);color:#fff;font-weight:700;padding:10px 16px}
.rp-status{margin:0;font-size:13px;color:var(--ki-teal);min-height:0}
.rp-status:empty{display:none}
.rp-table-wrap{overflow-x:auto;padding:4px 0}
.rp-table{width:100%;border-collapse:collapse;font-size:13px}
.rp-table th{text-align:left;font-size:10.5px;letter-spacing:1px;text-transform:uppercase;color:var(--ki-muted);font-weight:700;padding:10px 14px;border-bottom:1px solid var(--ki-line)}
.rp-table td{padding:11px 14px;border-bottom:1px solid var(--ki-line);vertical-align:middle;color:var(--ki-body)}
.rp-table tr:last-child td{border-bottom:0}
.rp-table td strong{display:block;color:var(--ki-text);font-size:13.4px}
.rp-table td small{display:block;color:var(--ki-muted);font-size:11.5px;margin-top:2px}
.rp-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.rp-origin{font-size:11px;font-weight:700;border-radius:6px;padding:2px 8px;background:var(--ki-soft);color:var(--ki-slate);white-space:nowrap}
.rp-origin.scheduled{color:var(--ki-teal)}
.rp-origin.export{color:var(--ki-muted)}
.rp-acts{white-space:nowrap;text-align:right}
#indicators-host .rp-acts button{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;padding:6px 10px;margin-left:4px}
#indicators-host .rp-acts .rp-danger{color:var(--ki-red);border-color:var(--ki-red)}
.rp-ask{font-size:12.5px;color:var(--ki-body);margin-right:4px}
.rp-acts .ki-i{width:15px;height:15px}
.rp-empty{color:var(--ki-muted);font-size:13px;padding:12px 16px;margin:0}

/* « Programmés » (A-36 slice 2). */
.sc-clock{margin:0;font-size:13px;color:var(--ki-muted)}
.sc-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px}
.sc-card{display:flex;flex-direction:column;gap:8px}
.sc-card.off{opacity:.7}
.sc-card header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.sc-card h3{margin:0;font-size:15px;font-weight:700;color:var(--ki-text)}
.sc-card header p{margin:2px 0 0;font-size:12.6px;color:var(--ki-body)}
.sc-boards{margin:0;font-size:12px;color:var(--ki-muted)}
.sc-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}
.sc-facts dt{font-size:10px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--ki-muted)}
.sc-facts dd{margin:2px 0 0;font-size:12.6px;color:var(--ki-body)}
.sc-bad{color:var(--ki-red)}
.sc-switch{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--ki-muted);cursor:pointer;white-space:nowrap}
.sc-card .rp-acts{text-align:left;white-space:normal}
#indicators-host .sc-card .rp-acts button:first-child{margin-left:0}
.sc-wide{flex:1;min-width:200px}
@media(max-width:600px){.sc-list{grid-template-columns:minmax(0,1fr)}}

/* AI comments (A-36 slice 3): the choice, its price and the month's spend; a report without them says why. */
.rp-ai{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:13px;font-weight:600;color:var(--ki-text);padding-bottom:8px}
.rp-ai small{flex-basis:100%;font-size:11.5px;font-weight:500;color:var(--ki-muted)}
.rp-table td small.rp-warn{color:var(--ki-red)}

/* Suggestions from habits (A-36 slice 4): computed, confirmed by the reader. */
.sc-suggestions{display:flex;flex-direction:column;gap:8px}
.sc-suggestions h3{margin:0;font-size:15px;font-weight:700;color:var(--ki-text)}
.sc-suggest{border-style:dashed}
