.my-routes-dialog{border:0;border-radius:24px;padding:0;width:min(1100px,96vw);max-height:94dvh;color:#26334a;background:#f8f7fc;box-shadow:0 20px 90px #18284460;font-family:inherit}.my-routes-dialog::backdrop{background:#22304b99;backdrop-filter:blur(5px)}.my-routes-dialog *{box-sizing:border-box}.mr-head{display:flex;justify-content:space-between;align-items:center;padding:20px 26px;background:#eee8fa;gap:12px}.mr-head h2{margin:0;font-size:25px}.mr-head p{margin:5px 0;font-size:14px}.mr-body{padding:22px;display:grid;grid-template-columns:260px 1fr;gap:24px}.mr-panel{background:white;border:1px solid #e0dbea;border-radius:18px;padding:18px;min-width:0}.my-routes-dialog button{font:inherit;font-weight:700;border:1px solid #d9d1e6;background:#fff;color:#4e366b;border-radius:12px;padding:10px 14px;cursor:pointer;min-height:44px}.my-routes-dialog button.primary{background:#70509a;color:white;border-color:#70509a}.my-routes-dialog button:disabled{opacity:.5;cursor:default}.my-routes-dialog input:not([type=checkbox]),.my-routes-dialog textarea,.my-routes-dialog select{font:inherit;width:100%;padding:11px;border:1px solid #bcb2ce;border-radius:10px;background:#fff;color:#25334a}.my-routes-dialog input[type=file]{font-size:13px}.my-routes-dialog label{display:block;font-weight:700;margin:12px 0 6px}.mr-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.mr-note{font-size:13px;line-height:1.5;color:#655f72}.mr-list-card{padding:12px 0;border-bottom:1px solid #eee;overflow-wrap:anywhere}.mr-list-card h4{margin:0}.mr-status{padding:10px 24px;min-height:42px;font-weight:700;background:#f0edf6}.mr-status.error{color:#a52231;background:#fff0ef}.mr-entry{display:flex;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #eee}.mr-entry span{flex:1;overflow-wrap:anywhere}.mr-entry img{width:45px;height:45px;object-fit:contain}.mr-media{display:grid;grid-template-columns:1fr 1fr;gap:14px}.mr-preview{max-width:100px;max-height:90px;display:block}.my-routes-dialog audio{width:100%;max-width:300px}.mr-review{padding:12px;background:#fff8e9;border-radius:12px;margin:12px 0}.mr-review label{font-size:14px}.mr-review input[type=checkbox]{margin-right:8px}.mr-list-actions{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.mr-list-actions button{padding:7px 9px;font-size:13px}.mr-empty{color:#777;font-size:14px;line-height:1.6}.my-routes-dialog [hidden]{display:none!important}.my-routes-dialog :focus-visible{outline:3px solid #f1a625;outline-offset:2px}.my-routes-level{background:#eee4ff!important;color:#52336f!important;grid-column:1/-1}.mr-result-audio{display:block;width:min(340px,90%);margin:12px auto}@media(max-width:700px){.mr-body{grid-template-columns:1fr;padding:12px;gap:12px}.mr-head{padding:15px}.mr-head h2{font-size:21px}.mr-media{grid-template-columns:1fr}.mr-panel{padding:14px}}

.result-audio-button{display:block;margin:8px auto 14px;width:64px;height:64px;padding:8px;border:0;border-radius:50%;background:transparent;color:#8297a3;box-shadow:none;cursor:pointer;line-height:0}.result-audio-button svg{width:48px;height:48px;display:block}.result-audio-button:hover{background:#f1f4f6;color:#637b89}.result-audio-button.is-playing{background:#f0eafa;color:#70509a}.result-audio-button:focus-visible{outline:3px solid #70509a;outline-offset:3px}.result-audio-button[hidden],#customResultAudio{display:none!important}.result-audio-status{display:block;font-size:15px;color:#9b2534}.result-audio-status:empty{display:none}

.result-audio-button:disabled{color:#8297a3;opacity:1;cursor:default;background:transparent}.result-audio-status{color:#686879;font-size:13px;margin:-8px 0 14px}

.custom-result .result-image{border:0;border-radius:24px;background:white;box-shadow:none;overflow:hidden}.custom-result .result-image img{width:100%;height:100%;object-fit:contain}.custom-result .sentence-praise{font-size:clamp(24px,4vw,38px)}.custom-result #resultAudioButton,.custom-result #resultAudioStatus{display:none!important}

.victory-child{width:100%;height:100%;display:grid;place-items:center}.victory-child svg{width:100%;height:100%;overflow:visible}.victory-jump{animation:victory-jump .9s ease-in-out infinite}.victory-sway{transform-origin:140px 200px;animation:victory-sway 1.8s ease-in-out infinite}.victory-arm-left{transform-origin:112px 159px;animation:victory-arm-left .9s ease-in-out infinite}.victory-arm-right{transform-origin:167px 159px;animation:victory-arm-right .9s ease-in-out infinite}.victory-leg-left{transform-origin:123px 210px;animation:victory-step 1.8s ease-in-out infinite}.victory-leg-right{transform-origin:156px 210px;animation:victory-step 1.8s ease-in-out -.9s infinite}.victory-head{transform-origin:140px 141px;animation:victory-nod 1.8s ease-in-out infinite}.victory-shadow{transform-origin:140px 283px;animation:victory-shadow .9s ease-in-out infinite}.victory-sparkles{transform-origin:140px 150px;animation:victory-sparkles .9s ease-in-out infinite}
@keyframes victory-jump{0%,100%{transform:translateY(0)}18%{transform:translateY(3px)}48%{transform:translateY(-17px)}80%{transform:translateY(0)}}
@keyframes victory-sway{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}
@keyframes victory-arm-left{0%,100%{transform:rotate(-20deg)}45%,60%{transform:rotate(12deg)}}
@keyframes victory-arm-right{0%,100%{transform:rotate(20deg)}45%,60%{transform:rotate(-12deg)}}
@keyframes victory-step{0%,100%{transform:rotate(0)}25%{transform:rotate(13deg)}50%,75%{transform:rotate(-5deg)}}
@keyframes victory-nod{0%,100%{transform:rotate(5deg)}50%{transform:rotate(-5deg)}}
@keyframes victory-shadow{0%,100%{transform:scaleX(1);opacity:.8}48%{transform:scaleX(.7);opacity:.45}}
@keyframes victory-sparkles{0%,100%{opacity:.5;transform:scale(.94)}48%{opacity:1;transform:scale(1.04)}}
@media(prefers-reduced-motion:reduce){.victory-child *{animation:none!important}}

/* Λίστες: κάρτες επιλογής + ενέργειες για την επιλεγμένη */
.my-routes-dialog .mr-body{grid-template-columns:310px 1fr}
.mr-count{margin:14px 0 8px;font-size:13px;font-weight:700;color:#7a6f8c;text-align:right}
.mr-list-grid{display:flex;flex-direction:column;gap:8px;max-height:min(42dvh,360px);overflow-y:auto;padding:2px}
.my-routes-dialog button.mr-list-card{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:10px 12px;border:2px solid #ece7f4;border-radius:14px;background:#fbfaff;color:#26334a;font-weight:400;transition:border-color .15s,background .15s,box-shadow .15s}
.my-routes-dialog button.mr-list-card:hover{border-color:#cdbfe3;background:#fff}
.my-routes-dialog button.mr-list-card.selected{border-color:#70509a;background:#f3eefb;box-shadow:0 3px 12px #70509a26}
.mr-kind{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;font-weight:800;font-size:16px;background:#e6f1ff;color:#2f5e9a}
.mr-kind.sentences{background:#fff1dc;color:#9a5b12;font-size:19px}
.mr-card-info{display:flex;flex-direction:column;min-width:0;gap:2px}
.mr-card-info strong{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mr-card-info small{font-size:12.5px;color:#76708a}
.mr-selected{margin-top:12px;padding:14px;border-radius:16px;background:#f6f3fb;border:1px solid #e3dcef}
.mr-selected:empty{display:none}
.mr-selected h4{margin:0 0 10px;font-size:16px;overflow-wrap:anywhere}
.mr-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.mr-chip{padding:4px 10px;border-radius:999px;background:#fff;border:1px solid #e0d8ec;font-size:13px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mr-chip.more{background:#ece5f7;color:#5b437c;font-weight:700}
.mr-selected .mr-list-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0}
.mr-selected .mr-list-actions button{padding:9px 8px;font-size:14px;min-height:42px}
.mr-selected .mr-list-actions .mr-play{grid-column:1/-1;font-size:16px}
.my-routes-dialog button.danger{color:#a52231;border-color:#f0c9cd}
.my-routes-dialog button.danger:hover{background:#fff0ef}
@media(max-width:700px){.my-routes-dialog .mr-body{grid-template-columns:1fr}.mr-list-grid{max-height:none}}

/* Σταθερό ύψος παραθύρου: κυλάνε ΜΟΝΟ οι λίστες, όχι όλη η αριστερή στήλη */
.my-routes-dialog[open]{display:flex;flex-direction:column;height:min(94dvh,860px);overflow:hidden}
.my-routes-dialog .mr-head,.my-routes-dialog .mr-status{flex:none}
.my-routes-dialog .mr-body{flex:1;min-height:0;overflow:hidden}
.my-routes-dialog .mr-body>.mr-panel{min-height:0;overflow-y:auto}
.my-routes-dialog .mr-body>aside.mr-panel{display:flex;flex-direction:column;overflow-y:auto}
.my-routes-dialog .mr-body>aside.mr-panel>*{flex:none}
.my-routes-dialog .mr-body>aside.mr-panel>#mrLists{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}
.my-routes-dialog #mrLists>*{flex:none}
.my-routes-dialog #mrLists>.mr-list-grid{flex:1 1 auto;min-height:150px;max-height:none;overflow-y:auto;overscroll-behavior:contain}
.my-routes-dialog .mr-list-grid>.mr-list-card{flex:none}
.mr-import{margin-top:18px;padding-top:4px;border-top:1px solid #eee}
.my-routes-dialog .mr-status:empty{min-height:0;padding:0}
/* Πιο μαζεμένη η επιλεγμένη λίστα */
.mr-selected{padding:12px}
.mr-selected h4{margin-bottom:8px}
.mr-chips{max-height:64px;overflow:hidden;margin-bottom:10px}
.mr-selected .mr-list-actions{display:flex;gap:6px}
.mr-selected .mr-list-actions .mr-play{flex:1;font-size:16px}
.mr-selected .mr-list-actions button.icon{flex:none;width:44px;padding:0;font-size:17px}
@media(max-width:700px){
  .my-routes-dialog[open]{height:96dvh}
  .my-routes-dialog .mr-body{overflow-y:auto}
  .my-routes-dialog .mr-body>.mr-panel,.my-routes-dialog .mr-body>aside.mr-panel{overflow:visible;min-height:auto}
  .my-routes-dialog #mrLists>.mr-list-grid{flex:none;max-height:44dvh}
}
.my-routes-dialog button.mr-new{width:100%;font-size:16px}
.mr-import label{font-size:14px}
.mr-account-note{border-top:0;margin-top:4px}
.my-routes-dialog .mr-panel>h3{margin:18px 0 0}
.mr-goto{display:flex;align-items:center;gap:6px;margin-top:8px}
.mr-goto label{display:flex;align-items:center;gap:6px;margin:0;font-size:14px;flex:1}
.my-routes-dialog .mr-goto input{width:78px;flex:none;padding:8px}
.my-routes-dialog .mr-goto button{flex:none;width:44px;padding:0}
.mr-goto-error{margin:4px 0 0;font-size:13px;color:#a52231}
