/* Traguardi: one clear action, legible progress and photographic covers. */
.mm112-page{max-width:880px;margin:0 auto;padding:12px 0 36px;overflow-wrap:anywhere}
.mm112-title{padding:28px 0 20px}.mm112-title h1{font-size:clamp(32px,6vw,44px);line-height:1.12;margin:10px 0 12px;letter-spacing:-1.2px}.mm112-title p{color:var(--muted);margin:0;line-height:1.6}
.mm112-eyebrow{display:block;font-size:10px;letter-spacing:1.7px;line-height:1.5;font-weight:750;color:var(--accent)}
.mm112-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:18px 0 36px}
.mm112-goal{min-width:0;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:var(--panel);box-shadow:0 5px 20px #00000007}
.mm112-goal-link{display:block;height:100%;color:var(--fg);text-decoration:none!important}
.mm112-goal-photo{position:relative;aspect-ratio:16/9;background:var(--soft);overflow:hidden}.mm112-goal-photo img{display:block;width:100%;height:100%;object-fit:cover;margin:0;max-width:none}.mm112-goal-photo>small{position:absolute;left:12px;bottom:12px;max-width:calc(100% - 24px);padding:4px 9px;border-radius:16px;background:#142430e6;color:#fff;font-size:10px;line-height:1.5;letter-spacing:0}
.mm112-points{position:absolute;top:14px;right:14px;background:#f7f4e6;color:#263c47;padding:8px 12px;border-radius:99px;font-size:12px;font-weight:750}
.mm112-goal-copy{padding:22px}.mm112-goal-copy h2{font-size:25px;letter-spacing:-.7px;line-height:1.2;margin:9px 0 12px}.mm112-goal-copy p{font-size:14px;line-height:1.6;color:var(--muted);margin:0 0 18px}
.mm112-card-action{display:flex;gap:15px;justify-content:space-between;align-items:center;min-height:44px;padding:14px 0 0;font-size:14px;font-weight:700;color:var(--accent);border-top:1px solid var(--line);margin-top:18px;box-sizing:border-box}
.mm112-progress-copy{display:flex;justify-content:space-between;gap:12px;font-size:13px;margin:20px 0 9px;line-height:1.5}.mm112-progress-copy span{color:var(--muted)}
.mm112-page progress,.mm112-goal progress{display:block;width:100%;height:7px;appearance:none;border:0;border-radius:20px;background:var(--line);overflow:hidden;color:var(--accent)}
.mm112-page progress::-webkit-progress-bar,.mm112-goal progress::-webkit-progress-bar{background:var(--line);border-radius:20px}.mm112-page progress::-webkit-progress-value,.mm112-goal progress::-webkit-progress-value{background:var(--accent);border-radius:20px}.mm112-page progress::-moz-progress-bar,.mm112-goal progress::-moz-progress-bar{background:var(--accent);border-radius:20px}
#mm107-home .mm112-featured{margin:28px 0 36px}#mm107-home .mm112-featured .mm112-goal-copy{padding:22px}#mm107-home .mm112-featured h2{font-size:26px}
.mm112-journey{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;padding:24px;border-radius:22px;background:var(--soft);border:1px solid var(--line);margin:0 0 32px}.mm112-journey h2{font-size:25px;letter-spacing:-.6px;margin:7px 0 0}.mm112-journey p{flex:1 1 100%;font-size:13px;margin:0;color:var(--muted);line-height:1.6}.mm112-total{text-align:right}.mm112-total strong{display:block;font-size:36px;line-height:1;letter-spacing:-1px}.mm112-total span{display:block;font-size:12px;color:var(--muted);margin-top:5px}
.mm112-profile-link{display:flex;align-items:center;gap:16px;border:1px solid var(--line);border-radius:20px;background:var(--panel);padding:22px;text-decoration:none!important;color:var(--fg);margin:0 0 24px}.mm112-profile-link>span:nth-child(2){flex:1;min-width:0}.mm112-profile-link strong{display:block;font-size:19px}.mm112-profile-link small{display:block;color:var(--muted);font-size:13px;margin-top:5px;line-height:1.6}
.mm112-medal{display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:58px;height:58px;border-radius:50%;background:#dbecf6;color:#23597b;font-size:31px;border:3px solid #b5d2e4;box-shadow:inset 0 0 0 3px #dbecf6,inset 0 0 0 4px #b5d2e4}
.mm112-detail-photo{border-radius:22px}.mm112-detail-copy{padding:28px 0}.mm112-detail-copy h1{font-size:clamp(30px,6vw,42px);line-height:1.12;letter-spacing:-1px;margin:12px 0 18px}.mm112-lead{font-size:18px;line-height:1.65;color:var(--muted)}
.mm112-reward{display:flex;align-items:center;gap:18px;padding:24px 0;margin:12px 0}.mm112-reward small{font-size:10px;letter-spacing:1.3px;color:var(--muted)}.mm112-reward strong,.mm112-reward span:not(.mm112-medal){display:block}.mm112-reward strong{font-size:19px;line-height:1.3;margin:7px 0}.mm112-reward span:not(.mm112-medal){font-size:13px;color:var(--muted)}
.mm112-primary{display:flex;align-items:center;justify-content:center;text-align:center;width:100%;min-height:50px;box-sizing:border-box;white-space:normal;text-decoration:none!important;border-radius:14px!important;font-size:16px!important;padding:14px 20px!important}
.mm112-success{padding:16px 20px;border-radius:14px;background:var(--soft);color:var(--accent)}
.mm112-rules{border-top:1px solid var(--line);padding:26px 0;margin:28px 0 0}.mm112-rules h2{font-size:22px;letter-spacing:-.5px}.mm112-rules p{font-size:14px;line-height:1.7;color:var(--muted)}.mm112-rules small{font-size:12px;line-height:1.7;display:block;color:var(--muted)}.mm112-rules summary{cursor:pointer;font-size:15px;font-weight:700;min-height:30px}
.mm112-badges{margin-top:36px}.mm112-badges>p{font-size:14px;line-height:1.6;color:var(--muted)}.mm112-badge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.mm112-badge-grid>a{display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--fg);text-decoration:none;gap:12px;padding:20px 12px;background:var(--panel);border:1px solid var(--line);border-radius:18px}.mm112-badge-grid strong{font-size:13px;line-height:1.5}.mm112-badge-grid small{font-size:11px;color:var(--accent)}
.mm112-check{display:flex!important;align-items:flex-start!important;gap:10px;line-height:1.6}.mm112-check input[type=checkbox]{width:18px!important;height:18px!important;flex:0 0 auto;margin-top:4px}
.mm112-admin-row{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--line);padding:18px 0}.mm112-admin-row small{display:block;color:var(--muted);font-size:12px;margin-top:6px}.mm112-admin-row button{font-size:13px;white-space:normal}.mm112-page form>small{display:block;margin-top:12px;font-size:12px;line-height:1.6;color:var(--muted)}
.mm112-story-author{display:flex;flex-direction:column;gap:5px;margin:24px 0 18px}.mm112-story-author a{font-weight:700}.mm112-story-author span{font-size:13px;color:var(--muted)}.mm112-story-body{font-size:17px;line-height:1.8;overflow-wrap:anywhere}.mm112-story-actions{display:flex;flex-wrap:wrap;gap:15px;align-items:center;justify-content:space-between;padding:20px 0;border-bottom:1px solid var(--line);margin:20px 0}.mm112-story-actions form{margin:0}.mm112-story-actions button,.mm112-story-actions a{font-size:13px;min-height:44px}.mm112-story-actions a{display:flex;align-items:center}.mm112-place-link{display:block;font-size:16px;font-weight:700;margin:28px 0}
.mm112-comment{border-bottom:1px solid var(--line);padding:22px 0;overflow-wrap:anywhere}.mm112-comment>small{display:block;font-size:11px;color:var(--muted);margin-top:6px}.mm112-comment p{line-height:1.7;font-size:14px}.mm112-comment summary{font-size:12px;color:var(--muted);cursor:pointer}.mm112-comments{margin:36px 0}.mm112-comments form button{font-size:14px}.mm112-visit-date{font-size:13px;color:var(--muted)}
#mm107-home .mm112-feed-excerpt{font-size:15px;line-height:1.7;margin:14px 0;color:var(--fg);overflow-wrap:anywhere}#mm107-home .mm112-feed-story .mm111-place-visual{aspect-ratio:16/9;border-radius:18px;position:relative;overflow:hidden;background:var(--soft)}#mm107-home .mm112-feed-story .mm111-place-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;margin:0}#mm107-home .mm112-feed-story .mm107-image-label{position:absolute;left:12px;bottom:12px;max-width:calc(100% - 24px);font-size:10px;background:#142430e6;color:#fff;padding:4px 8px;border-radius:20px}
.mm112-goal-link:focus-visible,.mm112-page a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.mm112-share-status{font-size:13px;color:var(--muted)}
@media(max-width:639px){.mm112-grid{grid-template-columns:minmax(0,1fr);gap:24px}.mm112-page{padding-top:4px}.mm112-badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mm112-detail-copy{padding-top:24px}.mm112-goal-copy{padding:20px}.mm112-journey{padding:20px}.mm112-journey h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){.mm112-page *,.mm112-goal *{scroll-behavior:auto!important;transition:none!important}}
