:root{--floor:#efefed;--floor-2:#e4e4df;--paper:#fff;--paper-2:#f5f5f1;--stub:#e4e4de;--ink:#202020;--ink-soft:#62625e;--rule:#c9c9c3;--rule-strong:#acaca0;--accent:#ff683e;--accent-soft:#f6ded5;--accent-ink:#90371e;--focus:#923418;--good:#245b3d;--good-soft:#e3efe6;--warn:#873500;--warn-soft:#f5e4d7;--rail:#12696e;--rail-dark:#0b4e52;--rail-paper:#e3f0ee;--rail-stub:#d1e6e3;--font-ui:"Inter Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--floor)}body{min-height:100dvh;font-family:var(--font-ui);color:var(--ink);background:var(--floor);-webkit-font-smoothing:antialiased;overflow-wrap:anywhere;margin:0;font-size:1rem;line-height:1.5}h1,h2,h3{margin:0;line-height:1.1}h2{letter-spacing:-.03em;font-size:1.2rem}h3{font-size:1.1rem;line-height:1.25}p{margin:0}a{color:inherit;text-underline-offset:4px}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}fieldset{min-width:0}summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;overflow-wrap:normal}.soft{color:var(--ink-soft)}.small{font-size:.8125rem}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.stack>*+*{margin-top:var(--gap,1rem)}.row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}main>*,.stack>*,.row>*,.row-between>*{min-width:0}.wrap{max-width:1500px;margin:0 auto;padding:0 4vw 5rem}.wrap.narrow,.narrow{max-width:850px;margin-left:auto;margin-right:auto}.page-space{padding-top:42px}.section{margin-top:2.5rem}.page-intro{margin-bottom:40px}.daily-heading{letter-spacing:-.085em;overflow-wrap:anywhere;font-size:clamp(3.4rem,8.6vw,8rem);font-weight:700;line-height:1}.daily-heading:after{content:"↗";color:var(--accent);margin-left:.22em;font-weight:400;display:inline-block}.page-title{letter-spacing:-.05em;font-size:clamp(2.2rem,5vw,3.6rem);font-weight:700;line-height:1.05}.page-sub{max-width:760px;color:var(--ink-soft);margin-top:22px}.lead{color:var(--ink-soft);max-width:46rem;font-size:1.15rem}.eyebrow{font:11px/1.5 var(--font-mono);color:var(--ink-soft)}.back-link{align-items:center;min-height:44px;font-size:.8125rem;display:inline-flex}.layout-heading{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:20px;display:flex}.layout-heading>a.small{align-items:center;min-width:44px;min-height:44px;display:inline-flex}.context-note{color:var(--ink-soft);margin:18px 0;font-size:12px;line-height:1.65}.planning-details{border-top:1px solid var(--rule);padding-top:8px}details>summary{font-weight:600}details[open]>summary{margin-bottom:16px}.app-header{padding:0 4vw}.header-inner{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:center;gap:24px;max-width:1500px;min-height:82px;margin:0 auto;display:flex}.brand{align-items:center;gap:.6rem;min-height:44px;text-decoration:none;display:flex}.brand-mark{width:32px;color:var(--ink);place-items:center;display:grid}.brand-mark svg{width:30px;height:30px;transform:rotate(-30deg)}.brand-name{font:800 27px var(--font-ui);letter-spacing:-1.5px}.primary-nav{gap:36px;display:flex}.nav-link{min-width:44px;min-height:46px;color:var(--ink);border-bottom:3px solid #0000;justify-content:center;align-items:center;padding:10px 0;font-size:15px;text-decoration:none;display:flex}.nav-link:hover{border-bottom-color:var(--rule)}.nav-link[aria-current=page]{border-bottom-color:var(--accent);font-weight:700}.profile-link{align-items:center;gap:8px;min-height:44px;font-size:13px;text-decoration:none;display:flex}.profile-link svg{width:18px;height:18px}.profile-link[aria-current=page]{font-weight:700}.btn{border:1px solid var(--ink);min-height:46px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.5rem;padding:.55rem 1.15rem;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover{background:var(--paper-2)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn svg,.icon-inline{flex:none;width:1.25rem;height:1.25rem}.btn-sign{background:var(--ink);color:#fff;border-color:var(--ink)}.btn-sign:hover{background:#3a3a36;border-color:#3a3a36}.btn-sign:active{transform:translateY(1px)}.btn-quiet{color:var(--ink-soft);border-color:#0000}.btn-quiet:hover{color:var(--ink);background:var(--floor-2)}.btn-sm{min-height:44px;padding:.35rem .85rem;font-size:.875rem}.btn[aria-current=true]{background:var(--ink);color:#fff}.field{gap:.35rem;font-weight:550;display:grid}.field>*{min-width:0}.field .hint,.hint{color:var(--ink-soft);font-size:.8125rem;font-weight:400}input:not([type]),input[type=text],input[type=search],input[type=number],input[type=month],input[type=date],select,textarea{width:100%;min-height:46px;font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--rule-strong);border-radius:0;padding:.6rem .75rem}select{text-overflow:ellipsis;min-width:0;max-width:100%}input:focus,select:focus,textarea:focus{outline:3px solid var(--focus);outline-offset:0;border-color:var(--ink)}.money-input{display:block;position:relative}.money-input>span{color:var(--ink-soft);position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.money-input input{padding-left:1.6rem}.check{align-items:center;gap:.5rem;min-height:44px;display:flex}.check input{width:1.15rem;height:1.15rem;accent-color:var(--ink);flex:none}.grid2{grid-template-columns:repeat(auto-fit,minmax(min(12rem,100%),1fr));gap:.9rem;display:grid}.grid2>*{min-width:0}.choices{gap:.6rem;display:grid}.choice{cursor:pointer;display:block;position:relative}.choice input{opacity:0;cursor:pointer;position:absolute;inset:0}.choice .face{background:var(--paper);border:1px solid var(--rule-strong);gap:.15rem;min-height:48px;padding:.9rem 1rem;display:grid}.choice:hover .face{border-color:var(--ink)}.choice .face b{font-weight:600}.choice .face small{color:var(--ink-soft)}.choice input:checked+.face{border-color:var(--ink);box-shadow:inset 4px 0 0 var(--accent);background:var(--accent-soft)}.choice input:checked+.face small{color:var(--ink)}.choice input:focus-visible+.face{outline:3px solid var(--focus);outline-offset:2px}.presets,.popular{flex-wrap:wrap;gap:.5rem;display:flex}.popular{border:0;margin:0;padding:0}.popular legend{margin-bottom:.5rem;padding:0}.preset,.pick-chip{border:1px solid var(--rule-strong);background:var(--paper);min-height:44px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;align-items:center;padding:.35rem .9rem;font-size:.9rem;display:inline-flex}.preset:hover,.pick-chip:hover{border-color:var(--ink)}.preset[aria-pressed=true],.pick-chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.pick-chip.held{cursor:default;color:var(--ink-soft);border-style:dashed}.pick-chip.more{color:var(--ink-soft);border-style:dashed}.seg{border:1px solid var(--rule-strong);flex-wrap:wrap;width:fit-content;max-width:100%;display:flex}.seg button{border:0;border-left:1px solid var(--rule-strong);background:var(--paper);min-width:44px;min-height:44px;color:var(--ink);font:inherit;cursor:pointer;padding:.3rem .8rem;font-size:.85rem}.seg button:first-child{border-left:0}.seg button:hover{background:var(--paper-2)}.seg button[aria-checked=true]{background:var(--ink);color:#fff;font-weight:600}.seg button:focus-visible{outline:3px solid var(--focus);outline-offset:-3px}.tabs{border-bottom:1px solid var(--rule);flex-wrap:wrap;gap:28px;display:flex}.tab{border-bottom:3px solid #0000;align-items:center;gap:.45rem;min-height:46px;margin-bottom:-1px;font-size:15px;text-decoration:none;display:inline-flex}.tab:hover{border-bottom-color:var(--rule-strong)}.tab[aria-current=true]{border-bottom-color:var(--ink);font-weight:700}.tab .n{font:11px var(--font-mono);color:var(--ink-soft)}.tag{font:500 11px/1.3 var(--font-mono);color:var(--ink-soft);white-space:nowrap;border:1px solid;align-items:center;gap:.3rem;padding:3px 6px;display:inline-flex}.tag-warn{color:var(--warn);background:var(--warn-soft)}.tag-good{color:var(--good);background:var(--good-soft)}.tags-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.notice{background:var(--warn-soft);border-left:4px solid var(--warn);padding:.8rem 1rem}.notice a{font-weight:600}.toast{z-index:50;left:50%;bottom:max(1rem, env(safe-area-inset-bottom));background:var(--ink);color:#fff;align-items:center;gap:.75rem;max-width:min(34rem,100vw - 2rem);padding:.6rem .6rem .6rem 1rem;animation:.22s ease-out toast-in;display:flex;position:fixed;transform:translate(-50%)}.toast-body{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.toast .btn{color:#fff;background:0 0;border-color:#bdbdb7}.toast .btn:hover{background:#3a3a36}.toast-close{color:#d4d4ce;cursor:pointer;background:0 0;border:0;min-width:44px;min-height:44px;font-size:1.3rem}.toast-close:hover{color:#fff}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.info-tip{vertical-align:-.15em;border:1px solid var(--ink-soft);width:1.15rem;height:1.15rem;color:var(--ink-soft);cursor:help;border-radius:50%;place-items:center;margin-left:.3rem;font:italic 700 .7rem/1 Georgia,serif;display:inline-grid;position:relative}.info-tip:before{content:"";position:absolute;inset:-14px}.info-tip-body{z-index:20;background:var(--ink);color:#fff;width:max-content;max-width:min(18rem,80vw);font:400 .8rem/1.45 var(--font-ui);padding:.55rem .7rem;display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.info-tip:hover .info-tip-body,.info-tip:focus-visible .info-tip-body{display:block}.alliance{display:inline;position:relative}.alliance-term{font:inherit;color:inherit;cursor:help;text-underline-offset:4px;background:0 0;border:0;margin:-12px 0;padding:12px 2px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.alliance-tip{z-index:10;background:var(--ink);color:#fff;width:min(22rem,80vw);padding:.7rem .85rem;font-size:.85rem;font-weight:400;line-height:1.45;position:absolute;top:calc(100% + 10px);left:0}.alliance-tip b{color:var(--accent)}.panel{background:var(--paper);border:1px solid var(--rule);padding:min(1.5rem,5vw)}.panel-title{letter-spacing:-.02em;font-size:1.1rem;font-weight:650}.panel>.panel-title+*,.panel>h2+.guide-list,.panel>h2+.calc-list{margin-top:.85rem}.card-facts{grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr));align-items:start;gap:1rem;display:grid}.card-facts>*{min-width:0}.guide-list{margin:0;padding:0;list-style:none;display:grid}.guide-list>li{border-top:1px solid var(--rule);gap:.2rem;padding:.75rem 0;scroll-margin-top:1rem;display:grid}.guide-list>li:first-child{border-top:0;padding-top:0}.guide-list>li:target{background:var(--accent-soft);box-shadow:-.6rem 0 0 var(--accent-soft), .6rem 0 0 var(--accent-soft)}.guide-list .row-between>*{min-width:0}.card-link{text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-underline-offset:3px}.card-link:hover{text-decoration-color:currentColor}.card-link,.tap{margin-block:-14px;padding-block:14px}.stub-title .tap{text-align:center;min-width:44px;margin:-16px -6px;padding:16px 6px;display:inline-block}.perks{gap:.3rem;margin:0;padding-left:1.1rem;display:grid}.perk-groups{grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr));gap:1rem;display:grid}.ledger{gap:.35rem;margin:0;display:grid}.ledger>div{flex-wrap:wrap;justify-content:space-between;gap:0 1rem;display:flex}.ledger dt{color:var(--ink-soft)}.ledger dd{font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;overflow-wrap:normal;margin:0}.ledger .total{border-top:1px solid var(--ink);padding-top:.45rem;font-weight:700}.ledger .total dt{color:inherit}.ledger-wrap>div{min-width:0}.ledger-wrap dd{overflow-wrap:anywhere;white-space:normal;text-align:right;min-width:0}.stub-title{font:11px var(--font-mono);color:var(--ink-soft)}.today-layout{grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:36px;display:grid}.today-layout>*,.ticket-main{min-width:0}.work-ticket{background:var(--paper);grid-template-columns:minmax(0,1fr) 170px;margin-bottom:18px;display:grid;position:relative}.work-ticket:first-of-type:not(.bank-ticket){background:var(--accent)}.work-ticket:before,.work-ticket:after{content:"";z-index:1;background:var(--floor);border-radius:50%;width:20px;height:20px;position:absolute;right:160px}.work-ticket:before{top:-10px}.work-ticket:after{bottom:-10px}.ticket-main{padding:25px}.ticket-main>.row-between{font:11px var(--font-mono);align-items:center;gap:8px}.ticket-main h2{letter-spacing:-.055em;margin:20px 0 10px;font-size:clamp(1.6rem,2.5vw,2.4rem);font-weight:600;line-height:1.05}.ticket-main h2 a{text-decoration:none}.ticket-main h2 a:hover{text-decoration:underline}.ticket-main>p{font-size:13px}.work-status{border:1px solid;padding:4px 6px;font-size:11px}.ticket-stub{border-left:1px dashed #20202070;flex-direction:column;align-items:flex-start;gap:16px;padding:28px 20px;display:flex}.ticket-stub strong{letter-spacing:-1.5px;font-size:32px;font-weight:500;line-height:1.05}.ticket-stub>.small{font:11px/1.5 var(--font-mono)}.ticket-stub .btn{background:0 0;border-color:#20202080;padding:9px;font-size:12px}.ticket-note{line-height:1.55;margin:18px 0!important}.requirement-list{margin:24px 0 16px}.requirement+.requirement{margin-top:24px}.requirement .row-between{gap:8px;font-size:11px;line-height:1.5}.tick-track{background:repeating-linear-gradient(90deg,#20202025 0 2px,#0000 2px 6px);height:28px;margin:12px 0 8px}.tick-track>span{background:repeating-linear-gradient(90deg, var(--ink) 0 2px, transparent 2px 6px);height:100%;transition:width .45s;display:block}.ticket-fold{border-top:1px dashed #20202070;margin-top:12px;font-size:13px}.ticket-fold form{padding-bottom:8px}.ticket-fold[open]>.stack{transform-origin:top;animation:.2s ease-out unfold}.ticket-fold .field{font-size:12px}.ticket-fold input{background:#fffb}.ticket-mode{font:11px var(--font-mono)}.empty-ticket{background:var(--accent);padding:36px}.empty-ticket h2{letter-spacing:-.055em;max-width:430px;margin:24px 0 14px;font-size:clamp(2rem,3vw,3rem);line-height:1.1}.empty-ticket p{max-width:430px;margin-bottom:24px;font-size:14px}.next-plan-link{border-top:1px solid var(--ink);justify-content:space-between;align-items:center;gap:20px;margin-top:26px;padding:24px 0;text-decoration:none;display:flex}.next-plan-link b{font-size:19px;font-weight:500}.next-plan-link .soft{margin-top:6px;font-size:13px;display:block}.next-plan-link>span:last-child{font-size:35px}.upkeep{border-left:1px solid var(--rule);padding-left:28px}.calendar-review{border-top:1px solid var(--rule);align-items:start;gap:18px;padding:22px 0;display:flex}.calendar-review p{margin-top:7px}.calendar-leaf{text-align:center;background:var(--paper);border-bottom:3px double #bcbcb6;flex-shrink:0;width:66px;transform:rotate(-4deg);box-shadow:2px 3px #20202012}.calendar-leaf>span{background:var(--accent);border-top:4px dotted var(--floor);font:11px var(--font-mono);padding:4px 0;display:block}.calendar-leaf strong{font-size:34px;font-weight:500;line-height:1.4;display:block}.calendar-leaf small{padding-bottom:7px;font-size:11px;display:block}.upkeep-row{border-top:1px solid var(--rule);padding:20px 0}.benefit-coupon{background:var(--paper);margin:14px 0 20px;display:flex;position:relative}.coupon-value{border-right:1px dashed var(--rule);flex-direction:column;justify-content:center;align-items:center;min-width:76px;padding:14px 10px;display:flex}.coupon-value strong{letter-spacing:-1px;font-size:26px;font-weight:500}.coupon-value span{font:11px var(--font-mono)}.coupon-body{flex:1;min-width:0;padding:16px}.coupon-body h3{margin-bottom:7px;font-size:16px}.coupon-body p{font-size:11px}.coupon-punch{background:var(--floor);border-radius:50%;width:22px;height:22px;animation:.25s ease-out punch;position:absolute;top:12px;right:12px;box-shadow:inset 1px 2px 2px #20202020}.benefit-coupon.used{border:1px solid var(--rule)}.benefit-coupon.used h3{padding-right:20px}.benefit-coupon.used .coupon-value{color:var(--ink-soft)}.work-ticket.bank-ticket{background:var(--rail-paper);color:var(--rail-dark)}.bank-ticket .ticket-stub{border-color:#12696e80}.bank-ticket .tick-track{background:repeating-linear-gradient(90deg,#12696e30 0 2px,#0000 2px 6px)}.bank-ticket .tick-track>span{background:repeating-linear-gradient(90deg, var(--rail-dark) 0 2px, transparent 2px 6px)}.wallet-sleeves{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:28px 0 36px;display:grid}.account-sleeve{padding-top:12px;text-decoration:none;display:block;position:relative}.sleeve-card{background:var(--ink);color:#fff;justify-content:space-between;align-items:flex-start;gap:12px;min-height:175px;margin:0 12px;padding:25px 24px 60px;transition:transform .25s;display:flex;transform:rotate(-2deg)}.sleeve-card b{letter-spacing:-.6px;max-width:230px;font-size:21px;font-weight:500;line-height:1.12}.sleeve-card>span{color:var(--accent);font-size:30px}.account-sleeve:nth-child(3n+2) .sleeve-card{background:var(--accent);color:var(--ink);transform:rotate(2deg)}.account-sleeve:nth-child(3n+2) .sleeve-card>span{color:var(--ink)}.sleeve-card.bank-card{color:var(--ink);background:#d4d7c8}.account-sleeve .sleeve-card.bank-card{aspect-ratio:1.586;width:calc(100% - 24px);max-width:240px;min-height:0;margin:0 auto;padding:20px}.sleeve-pocket{z-index:1;border:1px solid #c6c6bc;border-top:1px dashed var(--rule-strong);background:#e2e2db;min-height:108px;margin-top:-52px;padding:24px;position:relative}.sleeve-pocket>span{font:11px/1.6 var(--font-mono);margin-bottom:9px;display:block}.sleeve-pocket>b{font-size:13px;font-weight:500}.sleeve-pocket>.sleeve-owner{font-family:var(--font-ui);color:var(--ink-soft);overflow-wrap:anywhere;margin-bottom:8px;font-size:12px}.sleeve-name{letter-spacing:-.4px;overflow-wrap:anywhere;margin-bottom:10px;font-size:17px;font-weight:600;line-height:1.25;display:block}.account-sleeve:hover .sleeve-card,.account-sleeve:focus-visible .sleeve-card{transform:translateY(-24px)rotate(0)}.closed-sleeve{opacity:.7}.wallet-bank-art{color:var(--ink)}.bank-detail-art{width:240px;max-width:100%;margin:12px 0}.bonus-history-list{border-top:1px solid var(--ink);padding-top:28px}.stamp-collection{flex-wrap:wrap;gap:32px;display:flex}.receipt-record{flex-direction:column;align-items:start;gap:16px;max-width:250px;padding:16px 0;text-decoration:none;display:flex}.bonus-stamp{text-align:center;color:#35644c;font:11px var(--font-mono);text-transform:uppercase;border:3px double #35644c;flex-direction:column;gap:5px;padding:12px 23px;animation:.3s ease-out stamp;display:inline-flex;transform:rotate(-6deg)}.bonus-stamp strong{letter-spacing:1px;font-size:20px}.requirement-editor{border:1px solid var(--rule);min-width:0;margin:12px 0;padding:18px}.requirement-editor legend{padding:0 7px;font-size:12px}.add-form{gap:.9rem;display:grid}.add-form>*{min-width:0}.picker{gap:1rem;display:grid}.combo{position:relative}.combo-list{z-index:5;background:var(--paper);border:1px solid var(--ink);max-height:22rem;margin:0;padding:.3rem;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.combo-list li{cursor:pointer;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;min-height:44px;padding:.4rem .7rem;display:flex}.combo-list li.active{background:var(--accent-soft);color:var(--ink)}.combo-list li.active .soft{color:var(--ink)}.combo-list li.empty{cursor:default;color:var(--ink-soft)}.pending{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.pending-row{background:var(--paper-2);border:1px solid var(--rule);gap:.6rem;padding:min(.8rem,4vw);display:grid}.pending-fields{grid-template-columns:repeat(auto-fit,minmax(min(11rem,100%),1fr));gap:.6rem;display:grid}.picker>*,.pending-row>*,.pending-fields>*{min-width:0}.card-artwork{aspect-ratio:1.586;place-items:end center;width:100%;display:grid;position:relative}.card-artwork-surface{width:100%;display:block;position:relative;overflow:hidden;container-type:inline-size}.card-artwork-image{width:100%;height:auto;display:block}.card-artwork-placeholder{background:var(--ink);color:#fff;justify-content:space-between;align-items:flex-start;gap:12px;width:100%;height:100%;padding:25px 24px;display:flex}.card-artwork-placeholder b{letter-spacing:-.6px;overflow-wrap:anywhere;font-size:21px;font-weight:500;line-height:1.12}.card-artwork-placeholder>span{color:var(--accent);font-size:30px}.card-artwork-placeholder>.placeholder-owner{width:65%;color:inherit;font-size:11px;top:78%;left:6.5%}.cardholder-name{white-space:nowrap;text-overflow:ellipsis;pointer-events:none;font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-weight:500;line-height:1.2;display:block;position:absolute;overflow:hidden}.account-sleeve .sleeve-card.sleeve-card-art{background:0 0;width:calc(100% - 24px);max-width:240px;min-height:0;margin:0 auto;padding:0;display:block}.sleeve-card-art+.sleeve-pocket{margin-top:calc(-1 * var(--sleeve-overlap,52px))}.sleeve-card-art>.card-artwork{color:inherit;font-size:inherit}.account-sleeve:nth-child(3n+2) .card-artwork-placeholder{background:var(--accent);color:var(--ink)}.account-sleeve:nth-child(3n+2) .card-artwork-placeholder>span{color:var(--ink)}.bank-artwork{min-width:0;margin:0}.bank-artwork img{object-fit:contain;width:100%;height:auto;display:block}.bank-identity{text-align:center;overflow-wrap:anywhere;border:2px solid;border-top-width:6px;padding:14px 10px;font-size:15px;font-weight:600}.plan-page>.page-intro{margin-top:20px;margin-bottom:32px}.plan-tickets{flex-direction:column;gap:30px;display:flex}.plan-tickets>section{min-width:0}.pass{background:var(--paper);grid-template-columns:1fr;display:grid}.pass>*{min-width:0}@media (min-width:56rem){.pass{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}}.pass-band{background:var(--accent);color:var(--ink);flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:.5rem 1rem;padding:12px 28px;display:flex}.pass-band .airline{align-items:center;gap:.55rem;font-size:13px;font-weight:500;display:flex}.pass-band .airline svg{width:1.2rem;height:1.2rem}.pass-band .kind{font:11px var(--font-mono)}.pass-band a{align-items:center;min-height:44px;padding:0 .25rem;font-size:.8rem;display:inline-flex}.pass-band .tag{color:var(--ink);background:#fffc}.pass-main{align-content:start;gap:1.15rem;min-width:0;padding:30px;display:grid}.pass-card{letter-spacing:-.055em;font-size:clamp(2rem,3.7vw,3.5rem);font-weight:600;line-height:1.05}.pass-card a{text-decoration:none}.pass-card a:hover{text-decoration:underline}.pass-recommendation{min-width:0}.pass-recommendation.with-card-art{grid-template-columns:minmax(0,1fr) 136px;align-items:start;gap:20px;display:grid}.pass-artwork{margin-top:20px}.pass-artwork .card-artwork-placeholder{padding:12px}.pass-artwork .card-artwork-placeholder b{letter-spacing:-.2px;font-size:12px}.pass-artwork .card-artwork-placeholder>span{display:none}.pass-grid{border-top:1px dashed var(--rule-strong);grid-template-columns:repeat(auto-fit,minmax(min(7.25rem,100%),1fr));gap:.9rem 1rem;padding-top:1rem;display:grid}.pf .k{font:11px var(--font-mono);color:var(--ink-soft)}.pf .v{font-family:var(--font-mono);font-variant-numeric:tabular-nums;overflow-wrap:normal;font-size:1.05rem;font-weight:600}.pf .v.big{font-family:var(--font-ui);letter-spacing:-.04em;font-size:1.6rem;font-weight:600;line-height:1.1}.why{gap:.45rem;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.why li{grid-template-columns:1.1rem 1fr;gap:.35rem;display:grid}.why li:before{content:"›";color:var(--ink-soft);font-weight:800}.why li.warn:before{content:"!";color:var(--warn)}.pass-stub{background:var(--stub);border-top:1px dashed var(--rule-strong);align-content:start;gap:1rem;min-width:0;padding:28px;display:grid;position:relative}@media (min-width:56rem){.pass-stub{border-top:0;border-left:1px dashed var(--rule-strong)}.pass-stub:before,.pass-stub:after{content:"";background:var(--floor);border-radius:50%;width:26px;height:26px;position:absolute;left:-13px}.pass-stub:before{top:-13px}.pass-stub:after{bottom:-13px}}.pass-stub .ledger{font-size:12px}.pass-stub .ledger .total dd{font-size:30px}.credit-lines summary{min-height:44px;color:var(--ink-soft);font-size:.8125rem;font-weight:400}.credit-lines ul{gap:.4rem;margin:.5rem 0 0;padding:0;font-size:.8125rem;list-style:none;display:grid}.credit-lines li{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.credit-lines li .mono{white-space:nowrap;align-items:center;gap:.35rem;display:inline-flex}.credit-guidance{padding:32px}.train-ticket{background:var(--rail-paper);color:var(--rail-dark);margin-bottom:24px;position:relative}.train-band{background:var(--rail);color:#fff;justify-content:space-between;align-items:center;gap:12px;padding:13px 28px;font-size:13px;display:flex}.train-band>span:first-child{align-items:center;gap:8px;display:flex}.train-band svg{flex-shrink:0;width:19px;height:19px}.train-body{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);display:grid}.train-main{min-width:0;padding:30px}.train-identity{grid-template-columns:minmax(0,1fr) 136px;align-items:start;gap:20px;display:grid}.train-identity h2{letter-spacing:-.055em;overflow-wrap:anywhere;font-size:clamp(2rem,3.7vw,3.5rem);font-weight:600;line-height:1.05}.train-identity h2 a{min-height:44px;color:inherit;text-decoration:none;display:inline-block}.train-identity h2 a:hover{text-decoration:underline}.train-resources{border-top:1px dashed #12696e70;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;margin:24px 0 0;padding-top:20px;display:grid}.train-resources dt{font-size:12px}.train-resources dd{margin:6px 0;font-size:21px;font-weight:600}.train-resource-note{margin-top:8px;font-size:13px;font-weight:400;line-height:1.55;display:block}.train-resources p,.train-dates,.train-fee,.train-caution{margin-top:8px;font-size:13px;line-height:1.55}.train-caution{font-weight:600}.train-dates{margin-top:18px}.train-conditions{border-top:1px dashed #12696e70;margin-top:16px;font-size:13px;line-height:1.6}.train-conditions>p{margin:10px 0}.train-conditions>a{min-height:44px;color:inherit;align-items:center;display:inline-flex}.train-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.train-record{background:var(--rail-dark);color:#fff;border-color:var(--rail-dark)}.train-record:hover{color:#fff;background:#083e42}.train-details{border-color:var(--rail-dark);color:var(--rail-dark);background:0 0}.train-details:hover{color:var(--rail-dark);background:#cce4e1}.train-ticket :focus-visible{outline:3px solid var(--rail-dark);outline-offset:4px}.train-stub{background:var(--rail-stub);border-left:1px dashed #12696e80;flex-direction:column;gap:20px;min-width:0;padding:30px;display:flex;position:relative}.train-stub:before,.train-stub:after{content:"";background:var(--floor);border-radius:50%;width:26px;height:26px;position:absolute;left:-13px}.train-stub:before{top:-13px}.train-stub:after{bottom:-13px}.train-stub .stub-title{color:var(--rail-dark)}.train-bonus{letter-spacing:-3px;font-size:58px;font-weight:600;line-height:1}.train-stub .ledger{font-size:14px}.train-stub .ledger dt{color:inherit}.train-stub .ledger .total dd{font-size:30px}.train-open{flex-direction:column;gap:6px;font-size:13px;display:flex}.train-open b{font-size:22px;font-weight:600}.train-empty{background:var(--rail-paper);color:var(--rail-dark);padding:28px}.train-empty h3{margin-bottom:14px;font-size:28px}.train-empty p{margin-bottom:18px;font-size:14px;line-height:1.6}.rail-ask{background:var(--rail-paper);color:var(--rail-dark);border-top:3px solid var(--rail);gap:.6rem;padding:20px 28px;display:grid}.rail-ask label{align-items:center;gap:.5rem;font-weight:650;display:flex}.rail-ask select,.rail-ask .money-input{width:min(16rem,100%)}.rail-ask .btn{border-color:var(--rail-dark);color:var(--rail-dark)}.rail-ask .btn:hover{background:var(--rail-stub)}.based-on{font-size:.9rem;line-height:1.6}.based-on .assumed{color:var(--ink-soft);text-underline-offset:3px;-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.based-on-edit{justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:0 .4rem;display:inline-flex}.route-map{padding:32px 0}.route-lane-title{margin:24px 0 14px;font-size:17px}.route-stops{grid-template-columns:repeat(3,minmax(0,1fr));margin:30px 0 0;padding:0;list-style:none;display:grid}.route-stops li{border-top:2px solid var(--ink);padding:28px 26px 0 0;position:relative}.route-node{background:var(--floor);border:2px solid var(--ink);width:26px;height:26px;font:11px var(--font-mono);border-radius:50%;place-items:center;display:grid;position:absolute;top:-14px;left:0}.route-stops li:first-child .route-node{background:var(--accent)}.route-date{font:11px var(--font-mono);color:var(--ink-soft)}.route-stops h3{letter-spacing:-.6px;max-width:280px;margin:12px 0 8px;font-size:20px}.route-stops h3 a{align-items:center;min-width:44px;min-height:44px;text-decoration:none;display:inline-flex}.route-stops h3 a:hover{text-decoration:underline}.route-alt{align-items:center;min-height:44px;margin-top:8px;display:inline-flex}.bank-route-map{margin-top:40px}.bank-route-lanes{border-left:2px solid var(--rail);margin:30px 0 0 12px;padding:0;list-style:none}.bank-route-lanes>li{padding:0 0 32px 30px;position:relative}.bank-route-lanes>li:last-child{padding-bottom:0}.bank-route-name{align-items:center;gap:15px;min-height:40px;display:flex}.bank-route-name h3{letter-spacing:-.6px;font-size:22px;line-height:1.2}.bank-route-name h3 a{min-height:44px;color:var(--rail-dark);align-items:center;text-decoration:none;display:inline-flex}.rail-node.route-node{border-color:var(--rail);background:var(--rail);color:#fff;top:6px;left:-14px}.rail-node svg{width:15px;height:15px}.bank-stations{grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 0 0;display:grid}.bank-stations>div{border-top:2px solid var(--rail);min-width:0;padding:18px 24px 0 0;position:relative}.bank-stations>div:last-child{border-top-style:dashed}.rail-stop{border:2px solid var(--rail);background:var(--rail);border-radius:50%;width:14px;height:14px;position:absolute;top:-8px;left:0}.rail-stop-outline{background:var(--floor)}.bank-stations .route-date{display:block}.bank-stations strong{margin:5px 0;font-size:17px;font-weight:500;display:block}.bank-stations p{color:var(--ink-soft);font-size:12px;line-height:1.5}.announce{background:var(--paper);border:1px solid var(--rule)}.announce-head{background:var(--ink);color:#fff;flex-wrap:wrap;align-items:center;gap:.4rem .7rem;padding:12px 20px;display:flex}.announce-head svg{width:1.3rem;height:1.3rem;color:var(--accent);flex:none}.announce-head h2{letter-spacing:0;font-size:15px;font-weight:600}.announce-head p{font:11px var(--font-mono);color:#d4d4ce;margin-left:auto}.ask{gap:.8rem;padding:20px;display:grid}.ask .q{font-weight:650}.trick{background:var(--good-soft);padding:.55rem .75rem}.trick b{color:var(--good)}.profile-review-banner{border-left:4px solid var(--accent);flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.profile-review-banner>.stack{flex:22rem}.profile-review-banner .btn{white-space:normal;text-align:center}.why-search{gap:.75rem;display:grid}.instruments{grid-template-columns:repeat(auto-fit,minmax(min(16rem,100%),1fr));gap:.75rem;margin-bottom:1.5rem;display:grid}.instrument{background:var(--paper);border:1px solid var(--rule);align-content:start;gap:.45rem;padding:20px;display:grid}.instrument .k{font:11px var(--font-mono);color:var(--ink-soft)}.instrument .v{font-family:var(--font-mono);font-size:1.5rem;font-weight:600}.seats{align-items:flex-end;gap:6px;display:flex}.seat{width:30px;height:34px}.seat svg{width:100%;height:100%;display:block}.seat .shell{fill:none;stroke:var(--ink-soft);stroke-width:1.6px}.seat.taken .shell{fill:var(--ink);stroke:var(--ink)}.seat.last.taken .shell{fill:var(--accent);stroke:var(--accent-ink)}.timetable-wrap{background:var(--paper);border-top:2px solid var(--ink);overflow-x:auto}.timetable{border-collapse:collapse;width:100%}.timetable caption{text-align:left;font:11px var(--font-mono);color:var(--ink-soft);padding:16px 20px 0}.timetable th{text-align:left;vertical-align:bottom;font:500 11px var(--font-mono);color:var(--ink-soft);border-bottom:1px solid var(--ink);padding:12px 20px}.timetable td{vertical-align:top;border-bottom:1px solid var(--rule);padding:16px 20px;font-size:.95rem}.timetable tr:last-child td{border-bottom:0}.timetable tr.is-next td{background:#fff3ee}.timetable tr.is-next td:first-child{box-shadow:inset 4px 0 0 var(--accent)}.timetable .tt-name b{font-weight:600;display:block}.timetable .tt-name .sub{color:var(--ink-soft);margin-top:3px;font-size:.8rem;display:block}.timetable .tt-name .mode{vertical-align:-.1em;width:.95rem;height:.95rem;color:var(--ink-soft);margin-right:.4rem}.timetable .tt-date,.timetable .tt-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;overflow-wrap:normal}.timetable .tt-value,.timetable th.tt-value{text-align:right}.timetable .tt-why{white-space:nowrap;text-align:right}.timetable .tt-why a{align-items:center;min-height:44px;font-size:.8rem;display:inline-flex}.status{font:500 11px/1.3 var(--font-mono);white-space:nowrap;border:1px solid;padding:3px 6px;display:inline-block}.status-now{color:var(--good);background:var(--good-soft)}.status-later{color:var(--warn);background:var(--warn-soft)}.status-out{color:var(--ink-soft)}.status-rail{color:var(--rail-dark);background:var(--rail-paper)}.verdict-sign{font:600 13px var(--font-mono);border:1px solid;align-items:center;padding:6px 10px;display:inline-flex}.verdict-sign.stop{background:var(--ink);color:#fff;border-color:var(--ink)}.verdict-sign.go{background:var(--good-soft);color:var(--good)}.why-headline{max-width:52rem;font-size:clamp(1.15rem,2.6vw,1.45rem);font-weight:600;line-height:1.35}.why-reasons{counter-reset:why;gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.why-reasons li{counter-increment:why;grid-template-columns:1.6rem minmax(0,1fr);align-items:baseline;display:grid}.why-reasons li:before{content:counter(why) ".";font-family:var(--font-mono);color:var(--ink-soft)}.compare{grid-template-columns:1fr;gap:1rem;display:grid}.compare>*{min-width:0}@media (min-width:56rem){.compare{grid-template-columns:1fr 1fr}}.ticket{background:var(--paper);align-content:start;display:grid}.ticket .pass-band{padding:10px 20px}.ticket.ticket-alt .pass-band{background:var(--ink);color:#fff}.ticket-body{gap:.9rem;padding:24px 20px;display:grid}.ticket-body .pass-card{font-size:clamp(1.5rem,2.5vw,2rem)}.ticket .ledger{font-size:.92rem}.more-board>summary{min-height:44px;font-size:.9rem}.more-board[open]>summary{margin-bottom:.75rem}.calc-row{gap:.4rem;display:grid}.calc-name{font-weight:650}.calc-cpp{width:7rem}.calc-cpp input{width:100%;padding-left:.75rem;padding-right:1.6rem}.calc-cpp>span{left:auto;right:.85rem}.calc-list{margin:0;padding:0;list-style:none;display:grid}.calc-list li{border-top:1px solid var(--rule);gap:.5rem;padding:1rem 0;display:grid}.calc-list li:last-child{border-bottom:1px solid var(--rule)}.calc-list .row-between{align-items:flex-start}.calc-list .row-between>:first-child{overflow-wrap:anywhere;min-width:0}.calc-list .row-between>.mono{flex-shrink:0}.calc-total dt{overflow-wrap:anywhere;min-width:0}.calc-total dd{flex-shrink:0}.calc-total .total+.total{border-top:0;padding-top:0}.panel>.calc-total{border-top:1px dashed var(--rule-strong);margin-top:1.5rem;padding-top:1rem}.panel>.stack+.stack{margin-top:1.5rem}.panel .stack>h3+.guide-list{margin-top:.6rem}.review-nav{flex-wrap:wrap;gap:.5rem 1rem;display:flex}.review-choices{flex-wrap:wrap;gap:.5rem;display:flex}.review-choices .choice{max-width:100%}.review-choices .face{min-height:44px;padding:.6rem .85rem;font-size:.875rem}.credit-review{border-top:1px solid var(--rule);padding-block:1rem}.credit-review:first-of-type{border-top:0}.credit-examples{margin:.5rem 0 0;padding-left:1.25rem}.credit-examples li+li{margin-top:.75rem}.questions{max-width:44rem}.questions-ticket{background:var(--paper)}.questions-band{background:var(--accent);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;padding:12px 28px;font-size:13px;display:flex}.questions-band .mono{font-size:11px}.questions-body{padding:min(2rem,6vw)}.questions-body legend{padding:0}.questions-title{letter-spacing:-.05em;font-size:clamp(1.8rem,4vw,2.6rem);font-weight:650;line-height:1.05}.progress{gap:4px;margin-bottom:1.5rem;display:flex}.progress i{background:repeating-linear-gradient(90deg,#20202025 0 2px,#0000 2px 6px);flex:1;height:6px}.progress i.on{background:repeating-linear-gradient(90deg, var(--ink) 0 2px, transparent 2px 6px)}.wizard-actions{border-top:1px dashed var(--rule-strong);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1.5rem;padding-top:1.25rem;display:flex}.welcome{padding-top:clamp(32px,6vw,72px)}.welcome .daily-heading{max-width:12ch}.welcome .lead{margin-top:28px}.welcome-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:32px;display:flex}.welcome-actions form{display:contents}.welcome-secondary{flex-wrap:wrap;gap:4px 20px;margin-top:12px;display:flex}.welcome-secondary form{display:contents}.link-button{min-height:44px;font:inherit;color:var(--ink);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;align-items:center;padding:0;font-size:.875rem;text-decoration:underline;display:inline-flex}.link-button:disabled{color:var(--ink-soft);cursor:progress}.welcome-route{margin-top:64px}.welcome-route .route-stops p{max-width:320px}.loading-page{padding-top:42px}.skeleton{background:var(--floor-2);display:block}.skeleton-heading{width:min(560px,80%);height:clamp(3rem,8vw,7rem)}.skeleton-line{width:min(320px,60%);height:1rem;margin-top:22px}.skeleton-ticket{background:var(--paper);grid-template-columns:minmax(0,1fr) 170px;min-height:220px;margin-top:40px;display:grid;position:relative}.skeleton-ticket>span:last-child{background:var(--stub);border-left:1px dashed var(--rule-strong)}.loading-status{font:11px var(--font-mono);color:var(--ink-soft);padding:25px}.status-page{padding-top:clamp(32px,6vw,72px)}.status-page .lead{margin-top:24px}.status-page .row{margin-top:32px}.heading-word{white-space:nowrap;display:inline-block}.heading-cell{perspective:500px;isolation:isolate;animation:.48s both flap-settle;animation-delay:var(--flap-delay);display:inline-block;position:relative}.heading-final{visibility:hidden}.heading-half,.heading-moving{backface-visibility:hidden;pointer-events:none;letter-spacing:inherit;background:var(--ink);color:var(--accent);display:block;position:absolute;inset:0}.heading-top{clip-path:inset(0 0 50%)}.heading-bottom{clip-path:inset(50% 0 0);animation:.48s step-end both flap-bottom-old;animation-delay:var(--flap-delay)}.heading-moving{transform-origin:50%}.heading-old-top{z-index:3;clip-path:inset(0 0 50%);animation:.48s cubic-bezier(.45,.05,.8,.45) both flap-top-out;animation-delay:var(--flap-delay)}.heading-new-bottom{z-index:4;clip-path:inset(50% 0 0);animation:.48s cubic-bezier(.16,.75,.2,1) both flap-bottom-in;animation-delay:var(--flap-delay)}.heading-cell:after{content:"";z-index:5;pointer-events:none;background:#ff683e55;height:1px;position:absolute;top:50%;left:0;right:0}@keyframes flap-top-out{0%,5%{transform:rotateX(0)}48%,to{transform:rotateX(-90deg)}}@keyframes flap-bottom-in{0%,48%{transform:rotateX(90deg)}82%{transform:rotateX(-6deg)}to{transform:rotateX(0)}}@keyframes flap-bottom-old{0%{visibility:visible}50%,to{visibility:hidden}}@keyframes flap-settle{0%{filter:brightness(.82)}to{filter:brightness()}}@keyframes unfold{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@keyframes punch{0%{transform:scale(.2)}to{transform:scale(1)}}@keyframes stamp{0%{opacity:0;transform:scale(1.2)rotate(-12deg)}to{opacity:1;transform:scale(1)rotate(-6deg)}}@media (max-width:1050px){.today-layout{grid-template-columns:1fr}.upkeep{border-left:0;border-top:1px solid var(--rule);padding-top:28px;padding-left:0}.upkeep .benefit-coupon{max-width:500px}.wallet-sleeves{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:52rem){.timetable .tt-program{display:none}}@media (max-width:650px){.wrap{padding-bottom:110px;padding-left:20px;padding-right:20px}.app-header{padding:0 20px}.header-inner{min-height:70px}.brand-name{font-size:25px}.profile-link>span{font-size:12px}.primary-nav{z-index:15;padding:8px 20px calc(8px + env(safe-area-inset-bottom));background:var(--floor);border-top:1px solid var(--ink);justify-content:space-around;gap:0;position:fixed;bottom:0;left:0;right:0}.nav-link{padding:10px 18px}.page-space,.loading-page{padding-top:30px}.daily-heading{font-size:clamp(3rem,12vw,4.8rem)}.page-sub{font-size:14px}.page-intro{margin-bottom:28px}.work-ticket{grid-template-columns:minmax(0,1fr)}.work-ticket:before,.work-ticket:after{display:none}.ticket-main{padding:22px}.ticket-main h2{font-size:29px}.ticket-stub{border-top:1px dashed #20202070;border-left:0;grid-template-columns:1fr 1fr;align-items:center;gap:12px;padding:18px 22px;display:grid}.ticket-stub strong{font-size:26px}.ticket-stub .btn{grid-area:1/2/span 2}.empty-ticket{padding:25px}.wallet-sleeves{grid-template-columns:1fr;gap:20px}.account-sleeve{max-width:480px}.route-stops{grid-template-columns:1fr;margin-left:12px}.route-stops li{border-top:0;border-left:2px solid var(--ink);padding:0 0 35px 28px}.route-stops li:last-child{border-color:#0000}.route-node{top:0;left:-14px}.route-stops h3{max-width:none}.route-map>.layout-heading{flex-wrap:wrap}.pass-main,.pass-stub{padding:24px}.pass-band{padding:12px 24px}.pass-recommendation.with-card-art{grid-template-columns:minmax(0,1fr);gap:14px}.pass-artwork{width:136px;margin-top:0}.train-band{flex-wrap:wrap;padding:13px 24px}.train-body{grid-template-columns:minmax(0,1fr)}.train-main,.train-stub{padding:24px}.train-identity{grid-template-columns:minmax(0,1fr);gap:16px}.train-artwork{width:136px}.train-identity h2{font-size:32px}.train-stub{border-top:1px dashed #12696e80;border-left:0}.train-stub:before,.train-stub:after{display:none}.train-bonus{font-size:46px}.train-resources{gap:16px}.train-actions .btn{flex:1;min-width:0}.rail-ask{padding:20px 24px}.bank-route-name h3{font-size:20px}.bank-stations{grid-template-columns:minmax(0,1fr);margin-left:7px}.bank-stations>div{border-top:0;border-left:2px solid var(--rail);padding:0 0 22px 23px}.bank-stations>div:last-child{border-left-style:dashed;padding-bottom:0}.rail-stop{top:0;left:-8px}.bank-route-lanes>li{padding-left:26px}.credit-guidance{padding:24px}.skeleton-ticket{grid-template-columns:minmax(0,1fr)}.skeleton-ticket>span:last-child{display:none}.toast{bottom:calc(90px + env(safe-area-inset-bottom))}.info-tip-body{width:auto;max-width:none;position:fixed;bottom:1rem;left:1rem;right:1rem;transform:none}.timetable thead{display:none}.timetable,.timetable tbody{display:block}.timetable tr{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding:14px 16px;display:grid}.timetable tr:last-child{border-bottom:0}.timetable td{border:0;padding:0}.timetable .tt-name{grid-column:1/-1}.timetable .tt-why{text-align:left;grid-column:1/-1}.timetable tr.is-next{box-shadow:inset 4px 0 0 var(--accent);background:#fff3ee}.timetable tr.is-next td,.timetable tr.is-next td:first-child{box-shadow:none;background:0 0}}.site-footer{border-top:1px solid var(--rule);color:var(--ink-soft);gap:6px;margin-top:64px;padding-top:20px;padding-bottom:32px;font-size:13px;display:grid}.site-footer a{min-height:44px;color:inherit;align-items:center;display:inline-flex}.brand-mark svg{--tilt:-30deg}.pass-band .airline svg{--tilt:45deg;transform:rotate(var(--tilt))}.brand:hover .brand-mark svg,.brand:focus-visible .brand-mark svg,.pass:hover .pass-band .airline svg,.pass:focus-within .pass-band .airline svg{animation:1.1s cubic-bezier(.5,0,.3,1) takeoff}@keyframes takeoff{0%{transform:rotate(var(--tilt)) translateY(0);opacity:1}12%{transform:rotate(var(--tilt)) translateY(6%) scale(.96)}45%{transform:rotate(var(--tilt)) translateY(-220%) scale(.7);opacity:0}46%{transform:rotate(var(--tilt)) translateY(220%) scale(.7);opacity:0}to{transform:rotate(var(--tilt)) translateY(0) scale(1);opacity:1}}.train-ticket:hover .train-band svg,.train-ticket:focus-within .train-band svg{animation:.9s ease-in-out chug}@keyframes chug{0%,to{transform:translate(0)}10%,30%,50%{transform:translateX(var(--x,0)) translateY(-1px)}20%,40%{transform:translateX(var(--x,0)) translateY(0)}70%{opacity:0;transform:translate(14px)}71%{opacity:0;transform:translate(-14px)}}.motion .daily-heading:after{animation:.7s cubic-bezier(.2,.9,.3,1.3) .25s both arrow-launch}.daily-heading:hover:after{transition:transform .25s;transform:translate(.08em,-.08em)}@keyframes arrow-launch{0%{opacity:0;transform:translate(-.35em,.35em)scale(.6)}to{opacity:1;transform:none}}.motion .pass,.motion .train-ticket{animation:.6s cubic-bezier(.2,.8,.25,1) both pass-in}.motion .train-ticket:nth-of-type(2){animation-delay:80ms}.motion .train-ticket:nth-of-type(3){animation-delay:.16s}@keyframes pass-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.motion .route-stops[data-reveal] li{border-top-color:#0000}.motion .route-stops[data-reveal] li:before{content:"";background:var(--ink);transform-origin:0;height:2px;transition:transform .45s ease-out;position:absolute;top:-2px;left:0;right:0;transform:scaleX(0)}.motion .route-stops[data-reveal] .route-node{transition:transform .35s cubic-bezier(.3,1.6,.5,1);transform:scale(0)}.motion .route-stops[data-reveal] li>:not(.route-node){opacity:0;transition:opacity .4s,transform .4s;transform:translateY(6px)}.motion .route-stops[data-shown] li:before{transform:scaleX(1)}.motion .route-stops[data-shown] .route-node{transform:scale(1)}.motion .route-stops[data-shown] li>:not(.route-node){opacity:1;transform:none}.motion .route-stops[data-reveal] li:nth-child(2):before,.motion .route-stops[data-reveal] li:nth-child(2)>*{transition-delay:.4s}.motion .route-stops[data-reveal] li:nth-child(3):before,.motion .route-stops[data-reveal] li:nth-child(3)>*{transition-delay:.8s}.motion .route-stops[data-shown] li:first-child .route-node:after{content:"";border:2px solid var(--accent);border-radius:50%;animation:1.8s ease-out .6s 3 ping;position:absolute;inset:-2px}@keyframes ping{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(2.4)}}.motion .bank-route-lanes{border-left-color:#0000}.motion .bank-route-lanes:before{content:"";background:var(--rail);transform-origin:top;width:2px;transition:transform .6s ease-out;position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.bank-route-lanes{position:relative}.motion .bank-route-lanes .bank-stations>div{border-top-color:#0000}.motion .bank-route-lanes .bank-stations>div:before{content:"";border-top:2px solid var(--rail);transform-origin:0;transition:transform .4s ease-out;position:absolute;top:-2px;left:0;right:0;transform:scaleX(0)}.motion .bank-route-lanes .bank-stations>div:last-child:before{border-top-style:dashed}.motion .bank-route-lanes .rail-stop{transition:transform .3s cubic-bezier(.3,1.6,.5,1);transform:scale(0)}.motion .bank-route-lanes .rail-node{opacity:0;transition:transform .5s cubic-bezier(.2,.9,.3,1.2),opacity .3s;transform:translate(-24px)}.motion .bank-route-lanes[data-shown]:before{transform:scaleY(1)}.motion .bank-route-lanes[data-shown] .bank-stations>div:before,.motion .bank-route-lanes[data-shown] .rail-stop{transform:none}.motion .bank-route-lanes[data-shown] .rail-node{opacity:1;transform:none}.motion .bank-stations>div:nth-child(2):before,.motion .bank-stations>div:nth-child(2) .rail-stop{transition-delay:.3s}.motion .bank-stations>div:nth-child(3):before,.motion .bank-stations>div:nth-child(3) .rail-stop{transition-delay:.6s}.motion .bank-route-lanes>li:nth-child(2) *{transition-delay:.15s}.motion .bank-route-lanes>li:nth-child(3) *{transition-delay:.3s}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.heading-final{visibility:visible}.heading-half,.heading-moving,.heading-cell:after{display:none}}
