.all-document-list{display:grid;gap:10px;margin-top:17px;max-height:52vh;overflow:auto}
.archive-document{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:12px;border:1px solid #e2ebef;border-radius:15px;background:#f8fbfc}
.archive-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#e5f1f5;font-size:21px}
.archive-document b,.archive-document small{display:block}.archive-document b{font-size:13px}.archive-document small{margin-top:4px;color:#718795;font-size:10px}
.archive-document .document-kind{margin:0 0 4px;color:#2b7892;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.archive-document button{border:0;border-radius:10px;padding:9px 10px;background:#286f8c;color:#fff;font-weight:800}
.document-empty{padding:30px 12px;text-align:center;border:1px dashed #cbdbe2;border-radius:17px;background:#f7fafb}.document-empty span{display:block;font-size:36px}.document-empty b{display:block;margin-top:8px}.document-empty p{margin:5px auto 0;max-width:250px;color:#718795;font-size:12px;line-height:1.4}
.document-folder{overflow:hidden;border:1px solid #dce7eb;border-radius:16px;background:#fff}.document-folder>header{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:7px;padding:12px 13px;background:#edf4f6}.document-folder>header span{font-size:21px}.document-folder>header b{font-size:14px}.document-folder>header small{color:#6e8491;font-size:10px}.document-folder>div{padding:0 10px}.folder-empty{margin:0;padding:13px 4px;color:#8496a0;font-size:12px}.document-folder .archive-document{border:0;border-top:1px solid #e6edef;border-radius:0;background:#fff}.document-folder .archive-document:first-child{border-top:0}
.profile-strip{display:flex;align-items:center;gap:12px;margin:18px 0;padding:14px;border-radius:17px;background:#e8f2f5}.profile-strip>span{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:linear-gradient(145deg,#f27c5c,#c9415d);color:#fff;font-size:20px;font-weight:900}.profile-strip b,.profile-strip small{display:block}.profile-strip small{margin-top:3px;color:#6c8390;font-size:11px}
.more-actions{display:grid;gap:9px}.more-actions button{display:grid;grid-template-columns:36px 1fr;align-items:center;gap:8px;width:100%;padding:13px;border:1px solid #e0eaee;border-radius:14px;background:#fff;color:#25546d;text-align:left;font-size:20px}.more-actions button span b,.more-actions button span small{display:block}.more-actions button span b{font-size:13px}.more-actions button span small{margin-top:3px;color:#758a96;font-size:10px}.more-actions .danger-action{color:#a84452;background:#fff7f7}.more-actions button:disabled{opacity:.55}
@media(max-width:380px){.archive-document{grid-template-columns:36px 1fr auto;padding:10px;gap:8px}.archive-icon{width:36px;height:36px}.archive-document button{padding:9px 8px}}

/* RuMa v12: interfaccia mobile semplice, leggibile e con grandi aree di tocco */
:root{--navy:#173b57;--blue:#236f8d;--line:#d9e4e9;--soft:#f3f7f8;--coral:#d85d5f;--green:#297a53}
body{background:#dfe8ec}.app-shell{max-width:560px;background:#f5f8f9}.topbar{height:76px;padding:15px 18px;border-bottom:1px solid var(--line)}
.hero{padding:24px 18px 26px;background:var(--navy)}.hero-orb{display:none}.hero h1{font-size:30px}.quick-summary{margin:-9px 12px 20px;gap:8px}.quick-summary article{min-height:96px;border:1px solid #e3ebee;border-radius:16px;box-shadow:0 4px 12px #173b570b}.quick-summary small{font-size:11px;line-height:1.25}
.brand-mark{width:52px;height:52px;border-radius:17px;background:#fff url('./ruma-icon-192.png?v=17') center/cover no-repeat;box-shadow:0 5px 14px #173b5726}.brand-mark:before{display:none}.brand-mark span{color:transparent}.round-button{overflow:hidden;border-radius:50%;background:#e7f0f5;color:#1d4967;box-shadow:none}.quick-summary .due-summary{grid-column:1/-1;min-height:82px}.quick-summary .due-summary b{font-size:17px}.quick-summary .due-summary small{font-size:12px;font-weight:700;color:#4e6979}
.weather-card{margin:0 12px 24px;border:1px solid #eadba7;border-radius:16px}.main-section,.reminder-panel{padding-left:12px;padding-right:12px}.cards{grid-template-columns:1fr;gap:9px}
.service-card,.calendar{min-height:94px;padding:13px 14px;grid-template-columns:52px 1fr 18px;grid-template-rows:auto auto;column-gap:12px;border:1px solid var(--line);border-radius:17px;background:#fff!important;box-shadow:none;animation:none}
.service-card .icon{grid-column:1;grid-row:1/3;display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:#e8f2f5;font-size:27px}.service-card>span:nth-child(2){grid-column:2;grid-row:1}.service-card b{font-size:18px}.service-card small{font-size:11px}.service-card em{grid-column:2;grid-row:2;align-self:start;margin-top:6px;color:#526e7e;font-size:12px;font-weight:700}.service-card i{position:static;grid-column:3;grid-row:1/3;align-self:center;font-size:28px}.water .icon{background:#dff3f7}.light .icon{background:#fff0bf}.phone .icon{background:#e7e9ff}.gas .icon{background:#ffe6dc}.condo .icon{background:#e3f1df}.solar .icon{background:#ece8fb}.calendar .icon{background:#e7eef2}
.pulse{display:none}.reminder-panel{margin-top:28px;padding-top:22px}.wide-button,.wide-action,.dialog-actions button{min-height:48px;font-size:15px}.close{display:grid;place-items:center;min-width:48px;min-height:48px;border-radius:14px;background:#eef3f5;font-size:29px;line-height:1}
dialog{width:min(100% - 20px,520px);max-height:calc(100dvh - 20px);border-radius:24px}dialog form,.section-dialog,.payment-dialog{padding:22px}.flow-checks{display:grid;gap:10px;margin-top:16px}.flow-checks label{display:flex;align-items:center;gap:12px;margin:0;padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--soft)}.flow-checks input{width:23px;height:23px;margin:0;flex:0 0 auto}.flow-checks b,.flow-checks small{display:block}.flow-checks b{font-size:14px}.flow-checks small{margin-top:3px;color:#647d8b;font-size:11px}
.settlement-flow{display:grid;gap:11px}.settlement-flow button{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:11px;width:100%;min-height:82px;padding:12px;border:2px solid #d8e5ea;border-radius:17px;background:#fff;color:var(--navy);text-align:left}.settlement-flow button:disabled{border-color:#b9dfcb;background:#eff8f3;opacity:1}.settlement-flow button:disabled strong{background:var(--green);color:#fff}.settlement-flow b,.settlement-flow small{display:block}.settlement-flow b{font-size:15px}.settlement-flow small{margin-top:4px;color:#627c8b;font-size:11px}.settlement-flow strong{padding:6px 8px;border-radius:9px;background:#fff0d2;color:#8c6822;font-size:11px}.step-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#e8f2f5;font-size:23px}.flow-note{margin:14px 0 0;color:#6a808d;text-align:center;font-size:11px;line-height:1.45}.update-app{position:fixed;left:50%;bottom:88px;z-index:20;transform:translateX(-50%);width:min(calc(100% - 24px),536px);min-height:48px;border:0;border-radius:14px;background:var(--coral);color:#fff;font-weight:900;box-shadow:0 10px 25px #173b5740}
.reminder-send{margin-top:8px;background:#fff1d5;color:#73561b}.shared-reminder{background:#fff9e9}.shared-reminder>button{min-height:38px;border:0;border-radius:10px;padding:8px 10px;background:#2a7651;color:#fff;font-size:11px;font-weight:900}textarea{display:block;width:100%;min-height:110px;margin-top:5px;padding:12px;border:1px solid #cad9e1;border-radius:11px;resize:vertical;font:inherit;color:#173b57;background:#fff}
@media(max-width:430px){dialog{align-self:end;margin:0 auto 8px;border-radius:24px 24px 18px 18px}.form-row{grid-template-columns:1fr}.quick-summary{grid-template-columns:1fr 1fr}.quick-summary .due-summary{grid-column:1/-1}.quick-summary article:last-child{grid-column:auto;min-height:96px}.quick-summary article:last-child b,.quick-summary article:last-child small{display:block;margin-right:0}}
