/**
 * Projet         : MageTicket
 * Fichier        : public/assets/css/archive.css
 * Rôle           : Design unifié, responsive et bord à bord du viewer d’archives.
 * Auteur         : Régis KREMER
 * Version        : 0.33.0
 * Version projet : 0.33.0
 * Lot            : MAGETICKET APP PAGE HEADER UNIFICATION1
 * Base requise   : 0.33.0 + patchs design ciblés validés
 * Créé le        : 2026-07-22
 * Modifié le     : 2026-07-23
 * Dépendances    : app.css et responsive.css
 * Contraintes    : référence PC contractuelle ; zones sûres ; défilements internes ; peu d’arrondis
 * Modifications  : suppression des règles d’en-tête locales remplacées par app-page-header.
 */
.archive-shell{--archive-topbar:64px;min-height:100dvh;background:var(--bg);color:var(--text)}.archive-brand{display:flex;align-items:center;gap:9px;color:inherit;text-decoration:none;font-weight:850}.archive-brand img{width:42px;height:42px;object-fit:contain}.archive-panel h2{margin:0}.archive-panel small{color:var(--muted)}.archive-top-actions{display:flex;gap:8px;align-items:center}.archive-upload-label{position:relative;overflow:hidden}.archive-upload-label input{position:absolute;inline-size:1px;block-size:1px;opacity:0}.archive-readonly{min-height:38px;display:flex;align-items:center;justify-content:center;gap:12px;padding:7px max(12px,env(safe-area-inset-right)) 7px max(12px,env(safe-area-inset-left));border-bottom:1px solid color-mix(in srgb,var(--orange) 55%,var(--line));background:color-mix(in srgb,var(--orange) 12%,var(--surface));font-size:var(--fs-xs)}.archive-readonly strong{letter-spacing:.08em;color:var(--orange)}
.archive-main{height:calc(100dvh - var(--archive-topbar) - 38px);min-height:0;display:grid;grid-template-rows:auto minmax(310px,1fr) auto auto;gap:8px;padding:8px 10px max(10px,env(safe-area-inset-bottom))}.archive-connection{padding:8px 12px;border:1px solid var(--orange);background:color-mix(in srgb,var(--orange) 13%,var(--surface))}.archive-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.archive-kpis article{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);background:var(--surface)}.archive-kpis strong,.archive-kpis span{display:block}.archive-kpis strong{font-size:var(--fs-lg)}.archive-kpis article>span{font-size:var(--fs-md)}.archive-kpi-icon.archive,.archive-state.valid{color:var(--green)}.archive-kpi-icon.policy{color:var(--blue)}.archive-kpi-icon.invalid,.archive-state.invalid{color:var(--red)}.archive-kpi-icon.pending,.archive-state.key_required,.archive-state.pending{color:var(--orange)}
.archive-workspace{min-height:0;display:grid;grid-template-columns:minmax(340px,.9fr) minmax(440px,1.25fr) minmax(350px,.9fr);gap:8px}.archive-panel{min-width:0;min-height:0;border:1px solid var(--line);background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface-2) 78%,var(--surface)));display:flex;flex-direction:column;overflow:hidden}.archive-panel>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line)}.archive-list,.archive-items,.archive-policy-list,.archive-request-list,.archive-check-list{min-height:0;overflow:auto}.archive-list>button,.archive-items>button{width:100%;display:grid;grid-template-columns:10px minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px 12px;border:0;border-bottom:1px solid var(--line);background:transparent;color:inherit;text-align:left}.archive-list>button:hover,.archive-list>button:focus-visible,.archive-list>button.is-selected,.archive-items>button:hover,.archive-items>button:focus-visible,.archive-items>button.is-selected{background:var(--surface-3)}.archive-list strong,.archive-list small,.archive-items strong,.archive-items small{display:block}.archive-list small,.archive-items small{color:var(--muted);font-size:var(--fs-xs)}.archive-state{display:inline-block;width:9px;height:9px;background:currentColor}.archive-lock{font-size:var(--fs-xs);text-transform:uppercase;color:var(--orange);letter-spacing:.05em}.archive-filters{display:grid;grid-template-columns:1.3fr 1fr .8fr auto;gap:8px;padding:8px 10px;border-bottom:1px solid var(--line);background:var(--surface-soft)}.archive-filters label,.archive-form-grid label{display:grid;gap:4px}.archive-filters label span,.archive-form-grid label span{font-size:var(--fs-xs);color:var(--muted)}.archive-filters input,.archive-filters select,.archive-form-grid input,.archive-form-grid select{width:100%;min-height:38px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface-soft);color:var(--text)}.archive-items>button{grid-template-columns:minmax(0,1fr) auto}.archive-detail-empty{margin:auto;text-align:center;padding:30px}.archive-detail-empty>span{font-size:var(--fs-2xl)}.archive-detail-content{min-height:0;display:grid;grid-template-rows:auto auto minmax(150px,1fr) auto}.archive-detail-content>header{display:flex;justify-content:space-between;gap:10px;padding:12px;border-bottom:1px solid var(--line)}.archive-detail-content>header button{border:0;background:transparent;color:inherit;font-size:var(--fs-xl)}.archive-detail dl{margin:0;padding:8px 12px;overflow:auto;max-height:185px}.archive-detail dl>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px;padding:7px 0;border-bottom:1px solid var(--line)}.archive-detail dt{color:var(--muted)}.archive-detail dd{margin:0;overflow-wrap:anywhere}.archive-detail section{min-height:0;padding:8px 12px}.archive-detail section h3{margin:2px 0 8px}.archive-detail iframe{width:100%;height:100%;min-height:150px;border:1px solid var(--line);background:#fff}.archive-detail footer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:10px;border-top:1px solid var(--line);background:var(--surface)}
.archive-lower-grid{grid-row:4;align-self:end;display:grid;grid-template-columns:1.1fr .9fr 1fr;gap:8px}.archive-policy-list>div,.archive-request-list>div,.archive-check-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line)}.archive-request-list>div{grid-template-columns:minmax(0,1fr) auto}.archive-check-list>div{grid-template-columns:10px minmax(0,1fr) auto}.archive-policy-list strong,.archive-policy-list small,.archive-request-list strong,.archive-request-list small,.archive-check-list strong,.archive-check-list small{display:block}.archive-policy-list small,.archive-request-list small,.archive-check-list small{color:var(--muted);font-size:var(--fs-xs)}.archive-empty{padding:22px;color:var(--muted)}.archive-state-overlay{position:fixed;inset:calc(var(--archive-topbar) + 38px) 0 0;z-index:80;display:grid;place-content:center;text-align:center;padding:24px;background:color-mix(in srgb,var(--bg) 93%,transparent)}.archive-state-overlay[hidden]{display:none}.archive-state-overlay>span{font-size:var(--fs-2xl)}
.archive-wizard{position:fixed;inset:0;z-index:100;min-height:100dvh;display:grid;grid-template-rows:auto auto minmax(0,1fr);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);background:var(--bg)}.archive-wizard[hidden]{display:none}.archive-wizard>header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:10px max(16px,env(safe-area-inset-right)) 10px max(16px,env(safe-area-inset-left));border-bottom:1px solid var(--line);background:var(--surface)}.archive-wizard>header button{border:0;background:transparent;color:inherit;font-size:var(--fs-xl)}.archive-progress{padding:10px max(16px,env(safe-area-inset-right)) 10px max(16px,env(safe-area-inset-left));border-bottom:1px solid var(--line);background:var(--surface)}.archive-progress progress{width:100%}.archive-wizard form{min-height:0;overflow:auto;display:grid;grid-template-rows:minmax(0,1fr) auto}.archive-wizard fieldset{border:0;margin:0;padding:24px max(22px,calc((100vw - 980px)/2));overflow:auto}.archive-wizard legend{font-size:var(--fs-lg);font-weight:800;margin-bottom:16px}.archive-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.archive-form-grid .wide{grid-column:1/-1}.archive-notice{padding:14px;border-left:3px solid var(--blue);background:var(--surface-soft)}.archive-summary>div{display:grid;grid-template-columns:190px 1fr;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.archive-summary dt{color:var(--muted)}.archive-wizard footer{display:flex;justify-content:space-between;padding:10px max(16px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));border-top:1px solid var(--line);background:var(--surface)}
@media(max-width:1180px){.archive-workspace{grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr)}.archive-detail{position:fixed;inset:calc(var(--archive-topbar) + 38px) 0 0 34%;z-index:70;transform:translateX(100%);transition:transform .2s}.archive-detail.is-open{transform:none}.archive-lower-grid{grid-template-columns:1fr 1fr}.archive-lower-grid>:last-child{grid-column:1/-1}}
@media(max-width:760px){.archive-brand span{display:none}.archive-top-actions .archive-upload-label{font-size:0}.archive-top-actions .archive-upload-label::before{content:"Importer";font-size:var(--fs-sm)}.archive-top-actions [data-archive-open-policy]{display:none}.archive-readonly{align-items:flex-start;justify-content:flex-start}.archive-readonly span{font-size:var(--fs-xs)}.archive-main{height:auto;min-height:calc(100dvh - var(--archive-topbar) - 38px);display:block;padding:0 0 max(70px,env(safe-area-inset-bottom))}.archive-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.archive-kpis article,.archive-panel{border-width:0 0 1px}.archive-workspace{display:block}.archive-register,.archive-browser{min-height:48dvh}.archive-filters{grid-template-columns:1fr 1fr;padding:10px}.archive-filters label:first-child{grid-column:1/-1}.archive-detail{inset:0;z-index:90;transform:translateY(100%);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.archive-detail.is-open{transform:none}.archive-detail footer{position:sticky;bottom:0;grid-template-columns:1fr}.archive-lower-grid{display:block}.archive-lower-grid .archive-panel{min-height:auto}.archive-form-grid{grid-template-columns:1fr}.archive-form-grid .wide{grid-column:auto}.archive-wizard fieldset{padding:18px 14px}.archive-summary>div,.archive-detail dl>div{grid-template-columns:1fr}.archive-policy-list>div{grid-template-columns:minmax(0,1fr) auto}.archive-policy-list>div button:last-child{grid-column:2}}
@media(max-height:720px) and (min-width:761px){.archive-main{grid-template-rows:auto minmax(270px,1fr) auto auto}.archive-workspace,.archive-list,.archive-items,.archive-detail-content{min-height:0;overflow:auto}.archive-lower-grid .archive-panel{max-height:210px;overflow:auto}.archive-kpis article{padding-block:7px}}
@media(prefers-reduced-motion:reduce){.archive-detail{transition:none}}@media print{.archive-readonly,.archive-kpis,.archive-lower-grid,.archive-detail footer,.no-print{display:none!important}.archive-main{height:auto;display:block;padding:0}.archive-workspace{display:block}.archive-panel{border:0}.archive-browser{display:block}}

/* Lot 15 edge-to-edge invariant */
.archive-panel,.archive-kpis article,.archive-readonly,.archive-state-overlay{border-radius:0}
