/* TrailLab v350 · resumen prioritario tras completar una actividad */
.tlr-open{overflow:hidden}
.tlr-overlay{position:fixed;inset:0;z-index:24000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(1,10,7,.88);backdrop-filter:blur(9px)}
.tlr-overlay.open{display:flex;animation:tlrFade .2s ease-out}
.tlr-card{position:relative;width:min(760px,100%);max-height:min(92vh,920px);overflow:auto;border:1px solid rgba(166,232,44,.32);border-radius:28px;background:linear-gradient(155deg,#0d2827 0%,#071917 62%,#05120e 100%);box-shadow:0 28px 90px rgba(0,0,0,.62),0 0 0 1px rgba(47,214,179,.08);color:#f4f7f1}
.tlr-close{position:sticky;float:right;top:14px;right:14px;z-index:2;width:44px;height:44px;margin:14px 14px -58px 0;border:1px solid rgba(255,255,255,.16);border-radius:50%;background:rgba(8,28,22,.88);color:#fff;font:300 var(--tl-type-section, 26px)/1 sans-serif;cursor:pointer}
.tlr-close:focus-visible{outline:3px solid #a6e82c;outline-offset:3px}
.tlr-hero{text-align:center;padding:38px 66px 20px;background:radial-gradient(circle at 50% 12%,rgba(166,232,44,.17),transparent 55%)}
.tlr-kicker,.tlr-section-title{font-weight:950;letter-spacing:.13em;text-transform:uppercase}
.tlr-kicker{color:#a6e82c;font-size:var(--tl-type-kicker, 12px)}
.tlr-medal{width:138px;height:138px;margin:18px auto 15px;border:1px solid rgba(166,232,44,.45);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 35% 25%,#204c32,#0c251b 70%);box-shadow:0 0 0 9px rgba(166,232,44,.045),0 15px 34px rgba(0,0,0,.34)}
.tlr-medal.is-record{border-color:#f2c14e;background:radial-gradient(circle at 35% 25%,#6c5121,#251b09 72%);box-shadow:0 0 0 9px rgba(242,193,78,.07),0 15px 40px rgba(242,193,78,.16)}
.tlr-medal span{font-size:var(--tl-type-hero, 40px);line-height:1}.tlr-medal b{margin-top:7px;font-size:var(--tl-type-meta, 13px)}.tlr-medal small{max-width:110px;margin-top:3px;color:#b9c8bd;font-size:var(--tl-type-kicker, 12px);line-height:1.2}
.tlr-sport{margin:0;color:#31d6b3;font-size:var(--tl-type-kicker, 12px);font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.tlr-hero h2{margin:5px 0 1px;font-size:clamp(1.65rem,5vw,2.65rem);line-height:1.03;text-wrap:balance}
.tlr-date{margin:7px 0 0;color:#aab8ae;text-transform:capitalize}
.tlr-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:0 24px 22px}
.tlr-metrics div,.tlr-times div{border:1px solid rgba(47,214,179,.19);border-radius:15px;background:rgba(16,46,40,.68)}
.tlr-metrics div{min-width:0;padding:14px 8px;text-align:center}.tlr-metrics b{display:block;font-size:var(--tl-type-subsection, 20px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tlr-metrics span{display:block;margin-top:4px;color:#8fa39a;font-size:var(--tl-type-kicker, 12px);font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.tlr-section{margin:0 24px 18px;padding:18px;border-top:1px solid rgba(255,255,255,.09)}
.tlr-section-title{margin-bottom:13px;color:#d9f7cb;font-size:var(--tl-type-kicker, 12px)}
.tlr-records{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.tlr-records>div{display:flex;gap:11px;align-items:center;padding:12px;border:1px solid rgba(242,193,78,.24);border-radius:14px;background:rgba(75,54,13,.23)}
.tlr-records i{font-style:normal;font-size:var(--tl-type-section, 26px)}.tlr-records span,.tlr-achievements span{min-width:0}.tlr-records b,.tlr-records small,.tlr-achievements b,.tlr-achievements small{display:block}.tlr-records small{margin-top:2px;color:#f2c14e;font-weight:850}
.tlr-times{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.tlr-times div{padding:12px}.tlr-times span,.tlr-times small{display:block;color:#8fa39a}.tlr-times b{display:block;margin:3px 0;font-size:var(--tl-type-subsection, 20px)}.tlr-times span{font-size:var(--tl-type-kicker, 12px);font-weight:900}.tlr-times small{font-size:var(--tl-type-kicker, 12px)}
.tlr-achievements{display:grid;gap:9px}.tlr-achievements>div{display:flex;align-items:center;gap:13px;padding:10px;border-radius:15px;background:rgba(166,232,44,.08)}.tlr-achievements img{width:64px;height:64px;object-fit:contain}.tlr-achievements small{margin-top:3px;color:#aab8ae}
.tlr-empty{margin:0;color:#aab8ae;line-height:1.55}.tlr-feed-note{margin:0 42px 18px;color:#91a49a;font-size:var(--tl-type-kicker, 12px);text-align:center}.tlr-feed-note span{color:#31d6b3}
.tlr-actions{position:sticky;bottom:0;display:grid;grid-template-columns:1fr 1.35fr;gap:10px;padding:16px 24px 22px;background:linear-gradient(180deg,rgba(5,18,14,0),#05120e 22%)}
.tlr-actions button{min-height:52px;border:1px solid rgba(49,214,179,.35);border-radius:15px;background:#11332b;color:#f7fff5;font-weight:950;cursor:pointer}.tlr-actions button.primary{border-color:#a6e82c;background:#a6e82c;color:#071008}.tlr-actions button:active{transform:translateY(1px)}
@keyframes tlrFade{from{opacity:0}to{opacity:1}}
@media(max-width:640px){
  .tlr-overlay{align-items:stretch;padding:0}.tlr-card{width:100%;max-height:100dvh;border:0;border-radius:0}
  .tlr-hero{padding:30px 48px 16px}.tlr-medal{width:122px;height:122px;margin:13px auto 12px}
  .tlr-metrics{grid-template-columns:repeat(2,1fr);padding:0 14px 16px}.tlr-section{margin:0 14px 14px;padding:16px 5px}
  .tlr-records{grid-template-columns:1fr}.tlr-times{grid-template-columns:repeat(2,1fr)}.tlr-feed-note{margin:0 20px 14px}
  .tlr-actions{padding:14px}.tlr-close{top:8px;right:8px;margin:8px 8px -52px 0}
}
@media(prefers-reduced-motion:reduce){.tlr-overlay.open{animation:none}}

