/* Dossier workflows (feedback 22/09/2026): JURICEO green / sage / ivory / gold. */
:root{--gold:#b8933f;--fresh:#fbf3dd}
.fresh{background:linear-gradient(90deg,var(--fresh),transparent 85%);box-shadow:inset 3px 0 0 var(--gold)}
.tool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}
.tool-grid .button{justify-content:flex-start}
.doc-status{display:inline-flex;gap:8px;align-items:center;margin-top:4px}
.document-copy small+.subtle,.document-copy .subtle{display:block;font-size:12px}
.party-row{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--paper)}
.party-head{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:baseline;margin-bottom:8px}
.party-head strong{text-transform:capitalize;color:var(--green)}
.party-grid{display:grid;grid-template-columns:2fr 1.2fr 1.6fr 1.6fr;gap:8px}
.party-grid input,.party-grid select{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:#fff}
.dropzone input[type=file]{padding:22px;border:1.5px dashed #b9c9bd;border-radius:12px;background:#fbfcf8;width:100%}
.retro-legend{display:flex;flex-wrap:wrap;gap:8px}
.retro-legend span{font-size:12px;padding:3px 9px;border-radius:99px;color:#fff;background:var(--step)}
.retro-timeline{list-style:none;margin:6px 0;padding:0 0 0 6px;position:relative}
.retro-timeline:before{content:"";position:absolute;left:19px;top:8px;bottom:8px;width:2px;background:var(--line)}
.retro-step{position:relative;display:flex;gap:14px;padding:9px 0;align-items:flex-start}
.retro-dot{position:relative;z-index:1;flex:0 0 28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:650;color:#fff;background:var(--step);box-shadow:0 0 0 4px var(--cream)}
.retro-body{flex:1;min-width:0;border-left:3px solid var(--step);padding:4px 0 4px 12px}
.retro-line{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.retro-line input{flex:1;min-width:180px;padding:7px 10px;border:1px solid var(--line);border-radius:8px}
.retro-line select{padding:6px 8px;border:1px solid var(--line);border-radius:8px}
.retro-type{font-size:11px;letter-spacing:.4px;text-transform:uppercase;color:var(--step);font-weight:650}
.retro-body small{display:block;color:var(--muted)}
.retro-body .offset{display:inline-block;width:64px;height:24px;padding:0 6px;margin:0 2px;font-size:12px;line-height:22px;border:1px solid var(--line);border-radius:6px;vertical-align:baseline}
.retro-questions{background:#fffaf0;border:1px solid #ecd9a8;border-radius:10px;padding:10px 14px}.retro-questions summary{cursor:pointer;font-weight:550;color:#7a5a12}.retro-questions ul{margin:8px 0 0;padding-left:18px}
.checkbox-field{align-items:flex-start}
.retro-step.done{opacity:.55}.retro-step.done strong{text-decoration:line-through}
.retro-step.late .retro-body small{color:var(--danger)}
.retro-step.fresh{border-radius:10px}
.issue-card{border:1px solid #ecd9a8;background:#fffaf0;border-radius:12px;padding:14px 16px}
.issue-card h3{font-size:15px;margin-bottom:4px;color:var(--green)}
.issue-card ul{margin:8px 0;padding-left:18px}
.issue-question{display:flex;gap:8px;align-items:center;color:#7a5a12;font-weight:550}
.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.metric-row .metric{background:var(--sage);border-radius:12px;padding:12px 14px}
.metric-row .metric small{display:block;color:var(--sage-ink)}
.metric-row .metric strong{font-size:20px;color:var(--green)}
.pdf-choices{display:grid;gap:4px;max-height:260px;overflow:auto;border:1px solid var(--line);border-radius:10px;padding:8px 12px}
.transcript-text{white-space:pre-wrap;max-height:320px;overflow:auto;background:#fbfcf8;border:1px solid var(--line);border-radius:10px;padding:12px;font-size:13px}
.sources-consulted a{font-weight:550}
.inline-field{display:inline-flex;gap:6px;align-items:center}.inline-field input{width:110px;padding:6px 8px;border:1px solid var(--line);border-radius:8px}
@media (max-width:760px){.party-grid{grid-template-columns:1fr 1fr}.metric-row{grid-template-columns:1fr}.tool-grid{grid-template-columns:1fr 1fr}}

/* Haiku-style source picker */
.source-picker{position:relative;display:inline-block}
.source-trigger{white-space:nowrap}
.source-menu{position:absolute;bottom:calc(100% + 10px);left:0;z-index:40;width:340px;max-height:70vh;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 50px #1a302626;padding:6px 0}
.source-head{display:flex;gap:12px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--line)}
.source-head small{display:block;color:var(--muted)}
.switch{position:relative;width:34px;height:20px;flex:0 0 34px}.switch input{opacity:0;width:0;height:0}.switch span{position:absolute;inset:0;border-radius:99px;background:#cfd6cf;transition:.15s}.switch span:before{content:"";position:absolute;width:14px;height:14px;left:3px;top:3px;border-radius:50%;background:#fff;transition:.15s}.switch input:checked+span{background:var(--green)}.switch input:checked+span:before{transform:translateX(14px)}
.source-group{padding:6px 8px}
.source-group-title{display:flex;gap:8px;align-items:center;width:100%;border:0;background:none;padding:6px 8px;font-weight:600;color:var(--ink);text-align:left}
.source-item{display:flex;gap:10px;align-items:center;width:100%;border:0;background:none;padding:7px 8px;border-radius:9px;text-align:left;color:var(--muted)}
.source-item:hover{background:var(--cream)}.source-item.on{color:var(--ink)}
.source-icon{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--green);color:#fff}.source-icon svg{width:14px;height:14px}
.source-item:not(.on) .source-icon{background:#d7ddd6}
.source-name{flex:1}.source-check{color:var(--green)}
.source-foot{margin:4px 16px 8px;font-size:12px;color:var(--muted)}
@media (max-width:760px){.source-menu{position:fixed;left:12px;right:12px;bottom:90px;width:auto}}
/* Side assistant (Jarvis) */
.jv-fab{position:fixed;right:22px;bottom:22px;z-index:60;display:flex;gap:8px;align-items:center;padding:12px 18px;border:0;border-radius:99px;background:var(--green);color:#fff;font-weight:600;box-shadow:0 12px 30px #193d3640}
.jv-fab svg{color:var(--gold)}
.jv-panel{position:fixed;top:0;right:0;bottom:0;z-index:70;width:min(440px,100vw);display:flex;flex-direction:column;background:var(--paper);border-left:1px solid var(--line);box-shadow:-18px 0 50px #1a302622}
.jv-panel header{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line)}
.jv-panel header small{display:block;color:var(--muted);font-size:12px}
.jv-log{flex:1;overflow:auto;padding:16px 18px;display:flex;flex-direction:column;gap:12px;background:var(--cream)}
.jv-msg{max-width:92%;padding:10px 13px;border-radius:14px;background:#fff;border:1px solid var(--line);white-space:pre-wrap;line-height:1.5}
.jv-msg.me{align-self:flex-end;background:var(--green);color:#fff;border-color:var(--green)}
.jv-msg.error{border-color:#e3b7b0;background:#fff6f4}
.jv-review pre{white-space:pre-wrap;font-size:12px;max-height:180px;overflow:auto;background:var(--cream);padding:8px;border-radius:8px}
.jv-review summary,.jv-sources summary{cursor:pointer;font-size:13px;color:var(--sage-ink)}
.jv-sources a{display:block;font-size:12.5px;margin:4px 0}
.jv-actions{display:flex;gap:10px;align-items:center;margin-top:8px;flex-wrap:wrap}
.jv-proposal{display:flex;gap:8px;align-items:center;margin-top:8px;padding-top:8px;border-top:1px solid var(--line)}.jv-proposal span{flex:1}
.jv-compose{padding:12px 14px;border-top:1px solid var(--line);background:#fff}
.jv-compose textarea{width:100%;resize:none;border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.jv-tools{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-top:8px}
.jv-mic{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:17px}
.jv-mic.rec{background:#c0392b;border-color:#c0392b;animation:jvpulse 1s infinite}
@keyframes jvpulse{50%{box-shadow:0 0 0 7px #c0392b33}}
.jv-panel .source-menu{bottom:calc(100% + 8px);left:auto;right:-60px}
@media (max-width:760px){.jv-fab span{display:none}.jv-fab{padding:14px}}
/* Agenda: month / year views, type colours, visio */
.calendar-entry.type-audience{border-left:4px solid #8a5a00}.calendar-entry.type-ecritures{border-left:4px solid #1f5f4a}.calendar-entry.type-pieces{border-left:4px solid #3b5a85}
.calendar-entry.type-client{border-left:4px solid #6b4a8a}.calendar-entry.type-delai{border-left:4px solid #a33a2b}.calendar-entry.type-demarche{border-left:4px solid #58635d}
.calendar-entry-wrap{display:flex;flex-direction:column;gap:3px}
.visio-link{align-self:flex-start;border:0;background:none;padding:0 4px;font-size:12px;color:var(--sage-ink);text-decoration:underline;cursor:pointer}
.agenda-legend{margin:0 0 10px}
.calendar-month{background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px}
.month-head,.month-cells{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.month-head span{font-size:11px;color:var(--muted);text-align:center;padding:4px 0}
.month-cell{min-height:92px;border:1px solid #eef1ea;border-radius:8px;padding:5px;cursor:pointer;display:flex;flex-direction:column;gap:3px;overflow:hidden}
.month-cell:hover{background:var(--cream)}.month-cell.out{opacity:.35}.month-cell.today{outline:2px solid var(--gold)}
.month-day{font-size:12px;font-weight:600}
.month-items{display:flex;flex-direction:column;gap:2px}
.month-item{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:3px solid #58635d;padding-left:4px}
.month-item.type-audience{border-color:#8a5a00}.month-item.type-ecritures{border-color:#1f5f4a}.month-item.type-pieces{border-color:#3b5a85}.month-item.type-client{border-color:#6b4a8a}.month-item.type-delai{border-color:#a33a2b}
.calendar-year{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.calendar-month.compact h3{font-size:14px;text-transform:capitalize;margin:0 0 4px}
.calendar-month.compact .month-cell{min-height:30px;padding:2px;align-items:center;justify-content:center;position:relative}
.calendar-month.compact .month-day{font-weight:500}
.month-dot{position:absolute;bottom:1px;right:2px;font-style:normal;font-size:9px;background:var(--green);color:#fff;border-radius:99px;padding:0 4px}
.calendar-month.compact .month-cell.busy{background:var(--sage)}
@media (max-width:760px){.month-cell{min-height:54px}.month-item{display:none}.calendar-month:not(.compact) .month-cell.busy{background:var(--sage)}}
.qr-box{display:flex;flex-direction:column;align-items:center;gap:10px}.qr-code{width:240px;height:240px;border-radius:12px;border:1px solid var(--line);padding:8px;background:#fff}

.field input.missing{border-color:#e3c27a;background:#fffaf0}
.cp-row{display:flex;gap:8px;margin-top:6px}.cp-row input{width:120px}.cp-row select{flex:1}
.tt-chip{position:fixed;left:50%;transform:translateX(-50%);bottom:22px;z-index:60;border:1px solid #e3c27a;background:#fffaf0;color:#7a5a12;border-radius:99px;padding:9px 16px;font-weight:600;box-shadow:0 10px 26px #1a302620}
.tt-row{display:grid;grid-template-columns:1.6fr 1.4fr 80px auto auto;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.tt-row small{display:block}.tt-row input{padding:7px 9px;border:1px solid var(--line);border-radius:8px}
@media (max-width:760px){.tt-row{grid-template-columns:1fr 1fr}}

/* Mailbox */
.mail-filters{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px}.mail-filters .selected{background:var(--green);color:#fff}
.mail-layout{display:grid;grid-template-columns:minmax(280px,380px) 1fr;gap:14px;align-items:start}
.mail-list{background:#fff;border:1px solid var(--line);border-radius:14px;max-height:72vh;overflow:auto}
.mail-item{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);background:none;padding:11px 14px}
.mail-item:hover{background:var(--cream)}.mail-item.active{background:var(--sage)}.mail-item.urgent{box-shadow:inset 3px 0 0 #a33a2b}
.mail-line{display:flex;justify-content:space-between;gap:8px}.mail-line strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mail-subject{font-size:13.5px;margin:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mail-reader{min-height:60vh}.mail-head h2{font-size:19px;margin-bottom:4px}
.mail-link{display:flex;gap:8px;margin:10px 0}.mail-link select{flex:1;padding:8px;border:1px solid var(--line);border-radius:9px}
.mail-body{white-space:pre-wrap;font:14px/1.55 inherit;font-family:inherit;background:#fbfcf8;border:1px solid var(--line);border-radius:10px;padding:14px;max-height:55vh;overflow:auto}
@media (max-width:900px){.mail-layout{grid-template-columns:1fr}}
