/* Trainy Days v20: compact, quiet and consistent. No landscape or vehicle scale changes. */
:root{--logo-days:#cf7864;--logo-trainy:#397c7c}
.rail-side-nav:not(.secondary-nav)>button>svg{color:var(--logo-days)!important}
.secondary-nav>button>svg,.side-settings>svg,.prototype-admin>svg{color:var(--logo-trainy)!important}
.side-wallet{width:100%;text-align:left;cursor:pointer;border-radius:10px}.side-wallet:hover{background:#e0e9df}
.lobby-model{display:block;text-align:center;color:#647b78;font-size:12px;margin:0 0 13px}
.premium-train{width:29px;height:29px;border-radius:8px;background:linear-gradient(145deg,#fffbed,#f2dfaa 60%,#fff7df);border:1px solid #d7bc7d;box-shadow:inset 0 1px #fff,0 1px 3px #8d6b1c14;color:#a07a2f;display:inline-flex;align-items:center;justify-content:center;line-height:1;flex:none;vertical-align:middle}
.premium-train svg{display:block;vertical-align:initial}
.premium-surface{position:relative}.premium-surface>.premium-train{position:absolute;top:7px;left:8px;z-index:2;pointer-events:none}
.button.premium-surface:has(>.premium-train),.side-settings.premium-surface{padding-left:47px;min-height:43px}
.train-slot.premium-surface:has(>.premium-train){padding-top:37px}
.extra-slot .premium-train{left:8px;top:7px}
.premium-intro{position:relative;padding:37px 0 0}.premium-intro>.premium-train{position:absolute;top:0;left:0}
.daily-card .offer-rarity{display:flex;align-items:center;justify-content:flex-end;min-height:35px;margin:0 0 15px;padding:0 0 0 32px}
.daily-card .offer-rarity .rarity-badge{position:static!important;margin:0!important}.daily-card>.premium-train{top:14px;left:14px}
.daily-card .part-preview{margin-top:7px}.book-offer img{height:100%;width:auto!important;max-width:100%;object-fit:contain!important}
.book-theme-forest img{filter:hue-rotate(63deg) saturate(.6)}.book-theme-navy img{filter:hue-rotate(182deg) saturate(.55)}
.favorite-toggle,.favorite-toggle.selected{position:relative;display:inline-flex;align-items:center;justify-content:center;line-height:1;padding:0;background:#fff;color:#8b9c93;border:1px solid #dce5df;box-shadow:none}
.favorite-toggle svg{display:block;vertical-align:initial;transform:translateY(1px)}
.favorite-toggle.selected{color:#bb7967;background:#fff;border-color:#dce5df}.favorite-toggle.selected svg{fill:#d78e79;stroke:#b97663}
.route-heart.selected{background:var(--surface);color:#a96959;border-color:var(--line)}.route-heart.selected>svg{fill:#d78e79;stroke:#b97663}
.arrival-sheet .favorite-toggle{width:48px;height:48px;padding-top:9px}.arrival-sheet .favorite-toggle>.premium-train{width:17px;height:17px;left:1px;top:1px;border-radius:5px}.arrival-sheet .favorite-toggle>.premium-train svg{width:15px;height:15px;transform:none}
.part-card.in-use .part-preview{opacity:.5;filter:saturate(.4)}.part-location{display:flex;align-items:center;justify-content:center;gap:5px;font-size:12px;color:#6f7f75;min-height:37px;padding:5px}.owned-id{display:block;color:#96a39b;font-size:9px;overflow-wrap:anywhere;margin-top:5px}
.collection-drawer{margin-top:30px}.collection-drawer>summary{padding:8px 0;display:flex;align-items:center;gap:10px;cursor:pointer}.collection-drawer>summary>span{margin-left:auto}
.ride-help-row{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}.ride-help-row>small{flex:1;color:#7a877e;font-size:11px}.ride-help-row .button{font-size:12px}
.ride-help p{line-height:1.65;margin:0 0 18px;font-size:14px}.ride-modes .premium-train{height:22px;width:22px;top:3px;left:3px}.ride-modes .premium-surface:has(>.premium-train){padding-left:31px}
.route-card-heading>.route-heart{margin-left:auto;font-size:11px}.route-card-heading>span{white-space:nowrap}.route-card-heading{gap:12px;flex-wrap:wrap}
.route-favorites>article{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding:15px 0}.route-favorites>article>div{flex:1;min-width:0}.route-favorites strong{font-size:14px;line-height:1.5}.route-favorites small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.route-favorites p{line-height:1.6;margin:16px 0}
.drive-modes .manual-commit{background:radial-gradient(ellipse at center,#f2b56a20,#f9ce9b0a);box-shadow:inset 0 0 12px #efae5e24;border:1px solid #e6bc853d}
.drive-modes .manual-commit.selected{background:radial-gradient(ellipse at center,#edbd7c33,#f8d5ab12);box-shadow:inset 0 0 14px #e8a85830;border-color:#e4b57480}
.journey-follow>.module-heading h1{padding-right:0}
.arrival-sheet{position:fixed;z-index:35;bottom:18px;left:calc(50% + 100px);transform:translateX(-50%);width:min(520px,calc(100vw - 36px));padding:17px 20px;border:1px solid #d5dfd1;border-radius:17px;background:#fffdf7;box-shadow:0 6px 28px #36534620;animation:arrival-slide .3s ease-out;max-height:55dvh;overflow:auto}
.arrival-sheet-top{display:flex;align-items:center;gap:15px;justify-content:space-between}.arrival-sheet h2{font:600 20px var(--serif);margin:0 0 6px}.arrival-sheet small{font-size:11px;line-height:1.6;color:var(--muted)}.arrival-sheet-top>strong{font-size:24px;white-space:nowrap;color:#648351}
.receipt-breakdown{font-size:12px;margin-top:12px}.receipt-breakdown summary{cursor:pointer;color:#617464;line-height:1.5}.receipt-breakdown dl{margin:13px 0}.receipt-breakdown dl>div{display:flex;justify-content:space-between;gap:15px;padding:4px 0}.receipt-breakdown dd{margin:0;font-variant-numeric:tabular-nums}.receipt-breakdown p{margin:8px 0}
.arrival-sheet-actions{display:flex;gap:12px;align-items:center;justify-content:flex-end;margin-top:10px}
@keyframes arrival-slide{from{opacity:0;translate:0 15px}to{opacity:1;translate:0 0}}
.forum-toolbar{align-items:flex-start;flex-wrap:wrap;gap:12px}.forum-categories{display:flex;gap:7px;overflow:auto;max-width:100%;padding:3px 1px 7px;flex:1}.forum-categories>button{display:flex;align-items:center;gap:7px;border:1px solid #dce5dd;border-radius:10px;background:#f9faf5;padding:11px 12px;white-space:nowrap;font-size:12px;color:#718677}.forum-categories>button.selected{color:#3e6e61;background:#e4eee4;border-color:#c3d5c4}
.image-holder{position:relative}.image-pending{visibility:hidden}.image-wait{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;min-height:22px;z-index:3;color:#829782}.image-failed{font-size:11px;text-decoration:underline;cursor:pointer;padding:8px;line-height:1.5}.thumb-loading:after{display:none!important}
.book-stage.is-closed .journal-spread{visibility:hidden}.book-stage.opening .journal-spread,.book-stage.is-open .journal-spread{visibility:visible}.book-stage .journal-leaf{background-color:#f3e5c6!important;opacity:1!important;backface-visibility:hidden;-webkit-backface-visibility:hidden}.book-turn-sheet{will-change:transform}.book-turn-sheet>.journal-leaf{transform-style:flat}.book-cover-front,.book-cover-back{backface-visibility:hidden;-webkit-backface-visibility:hidden}.book-selector{display:flex;gap:7px;justify-content:center;flex-wrap:wrap;margin:0 0 15px}.book-selector .selected{background:#e5d7b8;border-color:#bda97c}.book-cover img{object-fit:cover}
.backlog-toolbar{display:flex;align-items:center;gap:20px;justify-content:space-between;margin-bottom:15px}.backlog-toolbar label{display:flex;align-items:center;gap:8px}.backlog-item{border:1px solid var(--line);border-radius:12px;padding:15px;margin:12px 0}.backlog-item header{display:flex;justify-content:space-between;align-items:center;gap:12px}.backlog-item h3{font-size:14px!important;margin:0!important}.backlog-item p{font-size:13px;line-height:1.6;margin:10px 0;white-space:pre-wrap}.backlog-item small{color:var(--muted);font-size:11px}.backlog-item .text-button{font-size:12px;margin:10px 15px 0 0}.backlog-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:10px 0 20px}.backlog-fields select{display:block;width:100%;margin-top:7px}.compose-preview{display:flex;gap:4px;overflow:auto;max-height:110px;margin:12px 0}.compose-preview img{width:130px;object-fit:contain}
@media(max-width:650px){.arrival-sheet{left:50%;bottom:10px;padding:14px;width:calc(100vw - 20px)}.arrival-sheet h2{font-size:18px}.arrival-sheet-top>strong{font-size:21px}.ride-help-row>.button{margin-left:auto}.ride-help-row>small{min-width:180px}.route-card-heading>.route-heart{font-size:10px;padding-right:8px}.forum-categories{flex-basis:100%}.backlog-toolbar{flex-wrap:wrap}.daily-card .offer-rarity{margin-bottom:12px}.collection-part-top{gap:8px}.premium-surface>.premium-train{top:5px;left:6px}.lobby-model{font-size:11px}}
@media(prefers-reduced-motion:reduce){.arrival-sheet{animation:none}.loading-dots i{animation:none!important}.book-stage{transition:none!important}}
.reduce-motion .arrival-sheet{animation:none}.reduce-motion .loading-dots i{animation:none!important}

@media(min-width:651px){.illustrated-book{width:min(900px,calc(100vw - 28px),calc((100dvh - 160px)*1.48 + 64px));overflow:visible}.illustrated-book .modal-body{overflow:visible!important}}

.journey-follow>.module-heading{position:relative}.journey-follow .trip-route-heart{position:absolute;right:0;top:0;width:42px;height:42px;padding:8px 0 0}.trip-route-heart>.premium-train{width:17px;height:17px;left:1px;top:1px;border-radius:5px}.trip-route-heart>.premium-train svg{width:15px;height:15px;transform:none}.journey-follow>.module-heading h1{padding-right:48px}
@media(max-width:650px){.arrival-actions{margin-top:8px}.arrival-actions>p{margin-top:5px}}
@media(max-width:650px){.arrival-actions{gap:2px}.arrival-actions>p{margin-top:0}}
