:root{--navy:#14293a;--ink:#183246;--mist:#dbe4e8;--copper:#946738;--cream:#f4f6f4;--bad:#9b3c2f;--good:#27664e;font-family:system-ui,-apple-system,'Hiragino Kaku Gothic ProN',sans-serif;font-size:16px;line-height:1.6;background:#c8d5de;color:var(--ink)}*{box-sizing:border-box}body{margin:0}header,nav,.toolbar,main,footer,#notice{max-width:1160px;margin:auto}header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;background:var(--navy);color:#f3e9d0;border-bottom:5px solid #b88e58}h1{font-family:serif;font-size:1.8rem;letter-spacing:.04em;margin:3px 0}header p{margin:0}h2,h3,p{margin-top:0}small,.help{font-size:.88rem}button,select,textarea,summary{font:inherit;min-height:44px;border-radius:3px}button,select{background:white;color:var(--ink);border:1px solid #a7b8c2;padding:8px 12px;cursor:pointer}button:hover{background:#e0e9ed}button:disabled{opacity:.5;cursor:default}.primary{background:var(--navy);color:#fff0c9;border-color:var(--navy)}button.primary:hover{background:#294760}.danger{border-color:var(--bad);color:var(--bad)}:focus-visible{outline:3px solid #c38b3d;outline-offset:3px}a{color:#225d7b;overflow-wrap:anywhere}a.portal{min-height:44px;display:inline-flex;align-items:center;border:1px solid #c2a77a;color:#fff0c9;padding:8px 14px;text-decoration:none}.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:#e6edef;padding:8px 16px}.toolbar label{display:flex;gap:8px;align-items:center}nav{display:flex;gap:4px;flex-wrap:wrap;padding:8px 12px;background:#b1c6d2}nav button{flex:1;white-space:nowrap}nav button[aria-current=page]{background:var(--navy);color:white}main{background:var(--cream);padding:20px;min-height:400px}#notice:not(:empty){padding:12px 16px;border-left:5px solid var(--bad);background:#fff0bf}.intro{display:grid;grid-template-columns:minmax(0,1fr) 210px;align-items:center;gap:16px}.intro h2{font-family:serif;margin:6px 0}.intro img{width:100%;height:140px;object-fit:contain;image-rendering:pixelated;background:#dbe4e8;border:1px solid #a5b7bd}.badge{display:inline-block;background:#deceb1;font-size:.88rem;padding:2px 7px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}.stat{background:#e2eaf0;border-bottom:3px solid #859eab;padding:8px 12px}.stat strong{display:block;font-size:1.4rem}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 0}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.panel{border:1px solid #afbec5;background:#fff;padding:14px;margin:12px 0}.track{border:2px solid #718c9b;padding:12px;background:#d8e2e7;margin:12px 0}.track h3{margin:0}.track .help{margin:4px 0 10px}.cars{display:flex;gap:8px;flex-wrap:wrap;min-height:78px;padding:8px 0;border-top:4px double #7e8e95;border-bottom:4px double #7e8e95}.car{width:140px;background:white;border:1px solid #8ea3b0;padding:8px;text-align:center;font-size:.88rem}.car strong{font-size:1.25rem;display:block}.car.next{border:3px solid #a7752e}.car small{display:block}.empty{padding:14px;min-height:64px;display:flex;align-items:center}.target{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.target span{padding:5px 12px;background:#f4dfb4;border:1px solid #bc9759}.choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.choices button[aria-pressed=true]{background:#d7e1e9;border:3px solid #345e7a}.good{color:var(--good)}.bad{color:var(--bad)}ul,ol{padding-left:22px;overflow-wrap:anywhere}.card-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.card-list article{border:1px solid #acbdc6;background:white;padding:14px}.sprite{width:100px;height:100px;background-size:300% 200%;background-position:var(--pos);image-rendering:pixelated;margin:0 auto 8px}.sprite.car-art{background-image:url('assets/cars-atlas.png')}.sprite.station-art{background-image:url('assets/station-atlas.png')}.car .sprite{width:80px;height:80px;margin-bottom:4px}.result{border:3px solid #a17b46;background:#f7ecd5;padding:16px}.full{width:100%}details{border:1px solid #b1c0c8;padding:8px 12px;margin:10px 0}summary{display:flex;align-items:center;cursor:pointer}textarea{width:100%;min-height:160px;background:white;border:1px solid #99adb9;padding:10px;font-size:.88rem;resize:vertical}footer{background:#b8cbd6;padding:16px;font-size:.88rem}footer p{margin:8px 0}footer a{min-height:44px;display:inline-flex;align-items:center}.skip{position:absolute;top:-100px}.skip:focus{top:0;z-index:2;background:white;padding:12px}.history{border-left:4px solid #90a8b4;padding:8px 12px}body.text200 .grid,body.text200 .card-list,body.text200 .intro,body.text200 .choices{grid-template-columns:1fr}body.text200 .stats{grid-template-columns:1fr}body.text200 .intro img{max-width:210px}body.text200 nav button{flex-basis:45%;white-space:normal}body.text200 .car{width:100%;display:flex;align-items:center;gap:12px;flex-wrap:wrap;text-align:left}body.text200 .car .sprite{margin:0}@media(max-width:700px){header{display:block;padding:14px}header .portal{margin-top:8px}h1{font-size:1.5rem}main{padding:14px}.grid,.card-list{grid-template-columns:1fr}.intro{grid-template-columns:minmax(0,1fr) 90px}.intro img{height:90px}nav button{flex-basis:28%;white-space:normal}.car{width:calc(50% - 4px)}}@media(max-width:390px){.intro,.choices,.stats{grid-template-columns:1fr}.intro img{width:120px;height:80px;margin-left:auto}.car{width:100%;display:flex;gap:10px;align-items:center;text-align:left;flex-wrap:wrap}.car .sprite{margin:0}.track{padding:10px}}

.work-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:18px}.controls .actions{margin-top:12px}.controls .choices{grid-template-columns:1fr}.controls .current-sequence{padding:8px;border-left:4px solid #b88e58;background:#e6edef}.forecast-lines p{margin:5px 0}.rule{padding:12px;border-left:5px solid #a77940;background:#f6e8ca;margin:10px 0}.rule ul{margin:6px 0}.result a{display:inline-flex;align-items:center;min-height:44px}.panel label{display:grid;gap:8px}.panel select{width:100%;min-width:0}body.text200 .work-grid{grid-template-columns:1fr}body.text200 .controls{grid-row:1}@media(max-width:700px){.work-grid{grid-template-columns:1fr}.controls{grid-row:1}.controls .choices{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:390px){.controls .choices{grid-template-columns:1fr}}
