.archive-page{display:grid;gap:20px}.archive-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.archive-summary .card{padding:20px;display:grid;gap:8px}.archive-summary span{color:var(--muted);font-size:.82rem}.archive-summary strong{font-size:1.4rem}.archive-summary .card:last-child strong{font-size:1rem;color:var(--accent)}.archive-content{padding:22px;min-height:250px}.archive-content-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}.archive-content-head h2{font-size:1.1rem;margin:0}.archive-content-head .input{max-width:350px}.archive-list{display:grid;gap:10px}.archive-document{appearance:none;border:1px solid var(--border);border-radius:13px;background:var(--panel-2);padding:14px;display:flex;gap:15px;align-items:center;width:100%;color:var(--text);text-align:left;cursor:pointer;transition:border-color .15s,transform .15s}.archive-document:hover,.archive-document:focus-visible{border-color:var(--accent);transform:translateY(-1px);outline:none}.archive-document-icon{background:var(--panel);border:1px solid var(--border);border-radius:9px;padding:13px 10px;font-size:.7rem;font-weight:700;color:var(--accent)}.archive-document-meta{display:grid;gap:4px;min-width:0;flex:1}.archive-document-meta strong{font-size:.9rem;overflow-wrap:anywhere}.archive-document-meta small,.archive-document-info small{font-size:.72rem;color:var(--muted)}.archive-document-info{display:grid;gap:6px;text-align:right}.archive-empty{padding:55px 18px;color:var(--muted);text-align:center}.archive-document-preview{display:block;width:100%;height:min(68vh,760px);border:1px solid var(--border);border-radius:10px;background:white}.archive-modal-info{color:var(--muted);font-size:.8rem;padding-bottom:12px}.archive-table-wrap{max-height:60vh;overflow:auto;border:1px solid var(--border);border-radius:10px}.archive-table{border-collapse:collapse;width:100%;font-size:.78rem}.archive-table th,.archive-table td{white-space:nowrap;padding:10px 13px;border-bottom:1px solid var(--border);text-align:left}.archive-table th{position:sticky;top:0;background:var(--panel);z-index:1}.archive-preview-loading{padding:60px;text-align:center}.archive-page .page-head{margin-bottom:0}@media(max-width:760px){.archive-summary{grid-template-columns:1fr}.archive-content-head{align-items:stretch;flex-direction:column}.archive-content-head .input{max-width:none}.archive-document-info{display:none}}@media(prefers-reduced-motion:reduce){.archive-document{transition:none}.archive-document:hover{transform:none}}
/* Fase 2: verifica dell'importazione bancaria */
.archive-analysis{display:grid;gap:13px}
.archive-analysis-counters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.archive-analysis-counters span{background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:11px;font-size:.75rem;text-align:center}
.archive-analysis-tablewrap{max-height:57vh;overflow:auto;border:1px solid var(--border);border-radius:9px}
.archive-analysis-table{border-collapse:collapse;width:100%;min-width:640px;font-size:.76rem}
.archive-analysis-table th,.archive-analysis-table td{border-bottom:1px solid var(--border);padding:10px;text-align:left;vertical-align:top}
.archive-analysis-table th{position:sticky;top:0;background:var(--panel);z-index:1}
.archive-analysis-table td small{display:block;margin-top:4px}
.archive-analysis-table .archive-amount-out{color:#f08372;white-space:nowrap;font-weight:600}
.archive-analysis-table .archive-amount-in{color:#70bea2;white-space:nowrap;font-weight:600}
.archive-analysis-table tr.archive-row-warning{background:rgba(239,170,77,.075)}
@media(max-width:760px){.archive-analysis-counters{grid-template-columns:repeat(2,minmax(0,1fr))}}

.archive-account-confirm{display:flex;gap:9px;align-items:flex-start;font-size:.84rem;line-height:1.45;padding:12px;border:1px solid var(--border);border-radius:10px}.archive-account-confirm input{margin-top:3px;flex:none}


/* Presentazione informativa futura (classe 0, attualmente nascosta). */
.archive-intro{max-width:750px;display:grid;gap:12px;padding:30px;}
.archive-intro h2{margin:0;font-size:1.2rem;}
.archive-intro p{margin:0;line-height:1.6;}
.archive-intro-icon{font-size:2rem;color:var(--accent);}
.archive-intro-restriction{border-top:1px solid var(--border);padding-top:15px;}
