@import url('/banner-layout.css?v=20261101-banner-firstpaint');
/* Important interface overrides have one named cascade layer. Layered important
   declarations outrank unlayered legacy important declarations; selectors do not
   need repeated :root or duplicated component rules. Normal new-component styles
   remain local to their classes. Keep future changes in this existing layer. */
@layer ru-interface {
/* Shared controls use an element background, so a negative stacking layer cannot hide the fill. */
html:root .ru-sweep9{--ru-button-base:#fff;--ru-button-ink:#3156d3;position:relative!important;box-sizing:border-box!important;isolation:auto!important;background-color:var(--ru-button-base)!important;background-image:linear-gradient(#ff8a24,#ff8a24)!important;background-repeat:no-repeat!important;background-position:left center!important;background-size:0% 100%!important;color:var(--ru-button-ink)!important;border:1px solid #b8c9ec!important;border-radius:0!important;transition:background-size 240ms cubic-bezier(.2,.75,.3,1),color 160ms,border-color 160ms!important;text-decoration:none!important}
html:root .ru-sweep9::before{display:none!important;content:none!important}
html:root .ru-sweep9:is(:hover,:focus-visible){background-size:100% 100%!important;color:#1b2a4a!important;border-color:#ff8a24!important}
html:root .ru-sweep9[hidden]{display:none!important}
html:root .ru-hpw-actions>:is(a,button){min-width:132px!important;height:40px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:8px 14px!important;font:600 14px/1.4 'Segoe UI','Microsoft YaHei',sans-serif!important;flex:none!important}
html:root .ru-hpw-actions>[hidden]{display:none!important}
html:root .ru-solid9{background:#fff!important;color:#3156d3!important;transition:none!important}
html:root .ru-solid9::before{display:none!important}
html:root .ru-solid9:is(:hover,:focus-visible){background:#ff8a24!important;color:#1b2a4a!important}
html:root .ru-close9{border:1px solid #d0daee!important;border-radius:0!important;background-color:#fff!important;color:#1b2a4a!important;transition:none!important;cursor:pointer}
html:root .ru-close9:is(:hover,:focus-visible){background-color:#ff8a24!important;border-color:#ff8a24!important;color:#1b2a4a!important}
html:root .ru-close9 svg{stroke:currentColor!important}
/* Bound the actual navigation strip even during a cached stylesheet race or popup resize. */
html:root.ru-journey .ru-sidebar{max-height:122px!important}
html:root.ru-journey .ru-sidebar .ru-sidebar-nav{flex:none!important;max-height:34px!important;min-height:0!important;box-sizing:border-box!important}
html:root.ru-journey .ru-sidebar .ru-journey-menu :is(a.ru-nav-item,a.ru-journey-sub-link){background-color:#fff!important;background-image:linear-gradient(#ff8a24,#ff8a24)!important;background-repeat:no-repeat!important;background-position:left center!important;background-size:0% 100%!important;color:#1b2a4a!important;transition:background-size 220ms ease-out!important}
html:root.ru-journey .ru-sidebar .ru-journey-menu :is(a.ru-nav-item,a.ru-journey-sub-link):is(:hover,:focus-visible){background-size:100% 100%!important;color:#1b2a4a!important}
html:root.ru-journey .ru-sidebar .ru-journey-menu a :is(span,strong,svg){color:inherit!important;-webkit-text-fill-color:currentColor!important}
html:root .ru-sidebar-nav>:is(.ru-nav-item,.ru-journey-group){z-index:1!important;height:34px!important;min-height:0!important;max-height:34px!important}html:root .ru-journey-group>.ru-journey-parent{height:100%!important}html:root .ru-sidebar-nav>.ru-journey-group.is-open{z-index:4!important}
/* The journey module is the only owner of route state; the bubble only paints hover. */
html:root.ru-journey .ru-sidebar .ru-sidebar-nav>:is(a.ru-nav-item,.ru-journey-group)>.ru-journey-parent,
html:root.ru-journey .ru-sidebar .ru-sidebar-nav>a.ru-nav-item{background:transparent!important;color:#fff!important;text-decoration:none!important}
html:root.ru-journey .ru-sidebar .ru-sidebar-nav :is(a.ru-nav-item,.ru-journey-parent)::before{display:none!important}
html:root.ru-journey .ru-sidebar .ru-sidebar-nav:not(.ru-nav-hovering)>:is(a.ru-nav-item.active,.ru-journey-group:has(>.ru-journey-parent.active)){background:#ff8a24!important;color:#1b2a4a!important}
html:root.ru-journey .ru-sidebar .ru-sidebar-nav:not(.ru-nav-hovering)>.ru-journey-group>.ru-journey-parent.active,
html:root.ru-journey .ru-sidebar .ru-sidebar-nav :is(a.ru-nav-item,.ru-journey-parent).ru-nav-hover-target{background:transparent!important;color:#1b2a4a!important}
html:root.ru-journey .ru-sidebar .ru-sidebar-nav :is(a.ru-nav-item,.ru-journey-parent) :is(.label,.ru-journey-nav-label){color:inherit!important}
html:root.ru-journey .ru-journey-mast{grid-template-columns:minmax(210px,1fr) minmax(200px,480px) 80px!important;gap:18px!important;position:relative;padding-right:18px!important;max-width:none!important}
html:root .ru-journey-account{padding-bottom:0!important}
html:root .ru-journey-search{display:grid!important;grid-template-columns:minmax(0,1fr) 64px!important;align-items:stretch!important;min-width:0!important;height:42px!important;padding:0!important;overflow:hidden!important;box-sizing:border-box!important;border:1px solid #c8d5e9!important;background:#fff!important;outline:none!important;box-shadow:none!important}
html:root .ru-journey-search:focus-within{border-color:#3156d3!important;box-shadow:0 0 0 2px #3156d330!important;outline:none!important}
html:root .ru-journey-search :is(input,button){position:static!important;inset:auto!important;min-width:0!important;width:100%!important;height:100%!important;max-height:none!important;box-sizing:border-box!important;transform:none!important;scale:1!important;translate:none!important;margin:0!important;border:0!important;border-radius:0!important;outline:none!important;box-shadow:none!important}
html:root .ru-journey-search input{padding:0 13px!important;background:transparent!important}
html:root .ru-journey-search button{padding:0!important;border-left:1px solid #c8d5e9!important}
html:root .ru-journey-menu :is(a.ru-nav-item,a.ru-journey-sub-link){justify-content:center!important;text-align:center!important}
/* All banner back controls share a forty-pixel square and the same chevron. */
html:root .ru-banner-back9{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;max-width:40px!important;max-height:40px!important;display:inline-grid!important;place-items:center!important;flex:0 0 40px!important;box-sizing:border-box!important;padding:9px!important;margin:0!important;align-self:center!important;translate:0 4px!important;border:1px solid #ffffff80!important;border-radius:0!important;background:#ffffff18!important;color:#fff!important;box-shadow:none!important;transition:background-color 140ms,color 140ms!important}
html:root .ru-banner-back9 svg{display:block!important;width:20px!important;height:20px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important}
html:root .ru-banner-back9:is(:hover,:focus-visible){background:#ff8a24!important;border-color:#ff8a24!important;color:#1b2a4a!important}
html:root :is(.directory-hero__subtitle,.consultation-banner .lead-intro){font:400 15px/1.75 'Segoe UI','Microsoft YaHei',sans-serif!important;letter-spacing:0!important}
/* The query result strip fits two compact rows; the outer rail communicates sideways wheel browsing. */
html:root.visitor-home #homeResearch{background:#fff!important}
html:root.visitor-home #homeResearch .ru-home-program-widget{background:transparent!important}
html:root .ru-hpw-results{display:grid!important;grid-template-columns:none!important;grid-auto-flow:column!important;grid-template-rows:repeat(2,128px)!important;grid-auto-columns:calc((100% - 24px)/3)!important;gap:12px!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important;padding:0!important;overscroll-behavior:contain!important;max-height:268px!important}
html:root .ru-hpw-results:empty{display:none!important}
html:root.visitor-home #homeResearch :is(.ru-home-research__reveal,.ru-home-research__body,.ru-home-program-widget){background:transparent!important}
html:root.visitor-home #homeResearch>summary{background:#fff!important;position:relative;isolation:isolate}
html:root.visitor-home #homeResearch>summary::before{content:'';position:absolute;inset:0;background:#ff8a24;transform:scaleX(0);transform-origin:left;transition:transform 280ms ease;z-index:-1;pointer-events:none}
html:root.visitor-home #homeResearch>summary:is(:hover,:focus-visible)::before{transform:scaleX(1)}
html:root.visitor-home #homeResearch :is(.ru-hpw-status,.ru-hpw-note){background:#fff!important}
.ru-hpw-results::-webkit-scrollbar{display:none}
html:root .ru-hpw-card{box-sizing:border-box!important;min-height:0!important;height:128px!important;padding:24px!important;white-space:normal!important;text-align:left!important;cursor:pointer;color:#1b2a4a!important;background:#fff!important;overflow:hidden!important;display:block!important}
html:root .ru-hpw-card .ru-hpw-school{font-size:12px!important;line-height:1.3!important;margin:0 0 4px!important}
html:root .ru-hpw-card h3{font-size:16px!important;line-height:1.35!important;margin:0 0 3px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html:root .ru-hpw-card .ru-hpw-meta{font-size:11px!important;line-height:1.3!important;margin:0 0 5px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html:root .ru-hpw-card dl{display:flex!important;gap:4px!important;flex-wrap:wrap!important;font-size:11px!important;line-height:1.3!important;margin:0!important}
html:root .ru-hpw-card :is(dt,dd){margin:0!important;padding:0!important}
html:root .ru-hpw-card dt:nth-of-type(2){margin-left:7px!important}
html:root .ru-hpw-card .ru-hpw-fee-note{font-size:10px!important;line-height:1.3!important;margin:4px 0 0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ru-result-rail9{position:relative;height:10px;margin:9px 0 12px!important;border-radius:99px;background:#dde4f2;cursor:ew-resize;touch-action:none}
.ru-result-rail9[hidden]{display:none!important}.ru-result-thumb9{position:absolute;left:0;top:1px;height:8px;width:36px;border-radius:99px!important;background:#8199c4;transform-origin:center;will-change:transform,width}
.ru-result-thumb9[data-direction=right]{border-radius:55% 70% 70% 55%!important}.ru-result-thumb9[data-direction=left]{border-radius:70% 55% 55% 70%!important}
html:root.visitor-school-detail .hero-row{display:grid!important;grid-template-columns:40px minmax(0,1fr);column-gap:18px;row-gap:10px;align-items:center!important}
html:root.visitor-school-detail .hero-row .name-stack{display:contents!important}
html:root.visitor-school-detail .hero-row .name{grid-column:2;grid-row:1;margin:0!important}
html:root.visitor-school-detail .hero-row .back{grid-column:1;grid-row:1}
html:root.visitor-school-detail .hero-row .ru{grid-column:2;grid-row:2;margin:0!important}
/* A title row is a two-row grid: the arrow shares the title row, never the subtitle row. */
html:root .directory-hero__heading-row{display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;column-gap:18px!important;row-gap:14px!important;align-items:center!important;min-height:0!important}
html:root .directory-hero__title-stack{display:contents!important}
html:root .directory-hero__heading-row h1{grid-column:2;grid-row:1;margin:0!important;transform:none!important;translate:none!important;animation:none!important;opacity:1!important}
html:root .directory-hero__heading-row .ru-banner-back9{grid-column:1;grid-row:1}
html:root .directory-hero__heading-row .directory-hero__subtitle{grid-column:2;grid-row:2;margin:0!important;transform:none!important;translate:none!important}
html:root .tabs .tab-apply{display:inline-flex!important;align-items:center!important;justify-content:center!important;height:40px!important;min-width:132px!important;padding:8px 14px!important;font:600 14px/1.4 'Segoe UI','Microsoft YaHei',sans-serif!important}
html:root .tabs .tab-apply::after{display:none!important}
/* News and city category tabs use the same sliding orange underline, with round ends. */
html:root :is(.feed-tabs,.city-tabs){position:relative;display:flex!important;align-items:center!important;padding:0 6px 8px!important}
html:root :is(.feed-tabs,.city-tabs)>button{position:relative;flex:none;min-height:40px;padding:9px 12px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#50678c!important;font:600 14px/1.5 'Segoe UI','Microsoft YaHei',sans-serif!important;box-shadow:none!important}
html:root :is(.feed-tabs,.city-tabs)>button::after{display:none!important}
html:root :is(.feed-tabs,.city-tabs)>button:is([aria-selected=true],[aria-pressed=true],:hover){color:#1b2a4a!important}
html:root .ru-tab-underline9{position:absolute;left:0;bottom:auto;height:3px;border-radius:99px!important;background:#ff8a24;pointer-events:none;transition:transform 240ms cubic-bezier(.2,.8,.2,1),width 240ms cubic-bezier(.2,.8,.2,1),top 240ms cubic-bezier(.2,.8,.2,1)}
html:root .feed-tabs{gap:0!important}
html:root .city-tabs{gap:12px!important;flex-wrap:wrap!important;overflow:visible!important}
html:root .city-tabs button span{font:inherit!important}
.place-source-links9{margin:9px 0 0;font-size:11px;color:#6c7e99}.place-source-links9 a{color:#3156d3;text-decoration:none}.place-source-links9 a:hover{text-decoration:underline}
html:root:is(.visitor-services,.ru-consultation-banner) #ruJourneyFooter{margin-top:24px!important}
html:root.visitor-school-detail .tabs .tab:not(.tab-apply){box-shadow:none!important;border-bottom-color:transparent!important}
html:root.visitor-school-detail .tabs .tab:not(.tab-apply):is(.active,:hover,:focus-visible)::after{background:#ff8a24!important;border-radius:99px!important}
/* One viewport-bounded sheet with a single, visible scrollbar. */
html:root .visitor-services .page,html:root.visitor-services :is(.page,.lead-page){height:auto!important;min-height:0!important;padding-bottom:30px!important}
.ru-service-workspace9{position:relative;height:480px;display:grid;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(0,0fr);gap:0;align-items:stretch;margin-top:22px}
.ru-service-workspace9.is-selected{height:auto;min-height:680px;grid-template-columns:minmax(280px,.9fr) minmax(0,1.4fr);gap:20px}
.ru-service-picker9{min-height:0;min-width:0;display:flex;flex-direction:column}.ru-service-details9{min-height:0;min-width:0;display:grid;grid-template-rows:auto auto;align-content:start;gap:16px}.ru-service-details9[hidden]{display:none!important}
html:root .ru-service-workspace9 #serviceCards{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(var(--service-rows,3),minmax(0,1fr))!important;height:100%!important;gap:0!important;flex:none;margin:0!important;min-height:0!important}
html:root .ru-service-workspace9.is-selected #serviceCards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
html:root .ru-service-workspace9 .service-card{width:auto!important;min-height:0!important;height:auto!important;overflow:auto;padding:16px!important;border:1px solid #d4ddef!important}
html:root .ru-service-workspace9.is-selected .service-card{min-height:0!important;padding:12px!important}
html:root .ru-service-workspace9 .service-card h3{font-size:19px!important;margin:10px 0 6px!important}
html:root .ru-service-workspace9.is-selected .service-card h3{font-size:16px!important;margin:6px 0!important}
html:root .ru-service-workspace9 .service-card p{font-size:12px!important;line-height:1.6!important;max-width:none!important;width:auto!important;white-space:normal!important;text-wrap:pretty!important}
/* More services divide the existing frame, reducing card content density with row count. */
html:root .ru-service-workspace9 #serviceCards:not([data-density=normal]) .service-card{padding:10px!important}
html:root .ru-service-workspace9 #serviceCards:not([data-density=normal]) .service-icon{width:28px!important;height:28px!important}
html:root .ru-service-workspace9 #serviceCards:not([data-density=normal]) .service-icon svg{width:20px!important;height:20px!important}
html:root .ru-service-workspace9 #serviceCards:not([data-density=normal]) .service-card h3{font-size:16px!important;margin:5px 0!important}
html:root .ru-service-workspace9 #serviceCards:is([data-density=tight],[data-density=minimal]) .service-card p{display:none!important}
html:root .ru-service-workspace9 #serviceCards:is([data-density=tight],[data-density=minimal]) .service-card h3{font-size:14px!important}
html:root .ru-service-workspace9 #serviceCards[data-density=minimal] .service-card{padding:6px!important}
html:root .ru-service-workspace9 #serviceCards[data-density=minimal] .service-card__top{display:none!important}
html:root .ru-service-details9 :is(.lead-panel,.lead-guide){box-sizing:border-box;margin:0!important;padding:20px!important;min-width:0!important;min-height:0!important;overflow:visible!important}
html:root .ru-service-details9 h2{font-size:20px!important;line-height:1.4!important;margin:0 0 10px!important}
html:root .ru-service-details9 :is(p,li){font-size:12px!important;line-height:1.65!important}
html:root .ru-service-details9 .lead-steps{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px!important;margin:10px 0!important;padding-left:18px!important}
html:root .ru-service-details9 .lead-steps h3{font-size:13px!important;margin:0!important}
html:root .ru-service-details9 .lead-steps p{margin:4px 0!important}
.ru-service-hint12{font-size:12px;color:#637592;margin:18px 0 0}.ru-service-note9{border-top:1px solid #d4ddef;padding-top:12px;margin-bottom:0;color:#637592}
html:root.ru-consultation-banner .lead-page{min-height:0!important;padding-bottom:72px!important}html:root.ru-consultation-banner #ruJourneyFooter{margin-top:24px!important}
/* Pinyin tool: always-visible name conversion, with a separate collapsible reference. */
.ru-transcriber9{box-sizing:border-box;padding:14px;border:1px solid #c9d6ee;background:#fff;margin-bottom:12px}.ru-transcriber-head9{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.ru-transcriber-head9 strong{font-size:15px}.ru-transcriber-head9 button{font-size:12px;padding:6px 10px}.ru-transcriber9 input{box-sizing:border-box;width:100%;height:42px;border:1px solid #c2d0ea;border-radius:0;padding:9px 11px;font:14px 'Microsoft YaHei',sans-serif}.ru-transcriber-output9{display:block;min-height:30px;padding:12px 0 6px;font:600 20px/1.5 'Segoe UI','Microsoft YaHei',sans-serif;color:#3156d3}.ru-transcriber9 small{display:block;font-size:11px;color:#6d7e99}.ru-transcriber-variants9{font-size:11px;color:#637592}.ru-pinyin-fold9 summary{cursor:pointer;font-size:14px;font-weight:600}.ru-pinyin-fold9 summary small{display:block;font-weight:400;font-size:11px;margin:6px 0;color:#6d7e99}.ru-pinyin-fold-body9{display:flex;align-items:center;gap:8px;padding-top:12px}html:root .ru-pinyin-fold-body9>:is(a,button){inset:auto!important;translate:none!important;transform:none!important;display:inline-flex!important;position:static!important;align-items:center!important;justify-content:center!important;min-height:36px!important;height:36px!important;margin:0!important;padding:7px 9px!important;font:600 12px/1.4 var(--ru-tool-ui-font)!important}
/* Card icons orbit by updating SVG x/y; inherited CSS cannot erase their anchors. */
html:root .ru-line-art--services .ru-service-orbit{transform:none!important;animation:none!important}
html:root .ru-line-art--services .ru-service-symbol{overflow:visible!important;transform:none!important;translate:none!important;animation:none!important;background:none!important}
html:root .ru-line-art--services .ru-service-symbol path{fill:none!important;stroke:#fff!important;stroke-width:1.6!important;stroke-dashoffset:0!important;animation:none!important}
/* A calm, visible banner movement; the city river and orange sun have their own cycles. */
html:root[data-user-motion=on] .ru-live-banner9{animation:ru-banner-float9 5s ease-in-out infinite alternate!important;transform-origin:center}
@keyframes ru-banner-float9{from{translate:0 3px}to{translate:0 -4px}}
html:root[data-user-motion=on] .city-river-flow{animation:city-river-current-v2 4s linear infinite!important}
html:root .city-sun-halo9{fill:#ff982b66!important;stroke:#ff963d!important;stroke-width:1;filter:blur(5px);transform-origin:279px 66px}
html:root[data-user-motion=on] .city-sun-halo9{animation:ru-sun-expand9 3.2s ease-out infinite!important}
@keyframes ru-sun-expand9{from{transform:scale(.7);opacity:.8}to{transform:scale(1.9);opacity:0}}
html:root :is(#copyAddress,.copy-place,.place-actions button):is(:hover,:focus-visible){background:#ff8a24!important;color:#1b2a4a!important;animation:ru-copy-pulse9 700ms ease-out 1}
@keyframes ru-copy-pulse9{50%{box-shadow:0 0 0 4px #ff8a2430}}
html:root .ru-selected-flash9{animation:ru-query-arrival-halo 350ms ease-out 2!important;outline:2px solid #ff8a24!important;outline-offset:2px}
html:root.visitor-schools .school-card{transition:transform 220ms cubic-bezier(.2,.8,.2,1),box-shadow 220ms!important;transform-origin:center}
html:root.visitor-schools .school-card:is(:hover,:focus-visible){transform:translateY(-5px) scale(1.012)!important;box-shadow:0 12px 26px #1b2a4a20!important;z-index:2}
/* Sampled from the owner's reference: warm ivory, RGB(254,252,247). */
html:root{--ru-page-paper:#fefcf7;--page-bg:#fefcf7;--ru-refine-paper:#fefcf7;--mist:#fefcf7!important;--home-ground:#fefcf7!important;--ru-desktop-gutter:42px}
html:root,html:root body{background-color:var(--ru-page-paper)!important}
html:root :is(main.page,main.lead-page,.directory-page-shell,.page-wrap,.ru-journey-mast,.ru-service-hint12,.ru-service-workspace9,.service-cards){background-color:var(--ru-page-paper)!important}
html:root.visitor-home :is(.inner.content,.ru-home-discover,.ru-home-services,.ru-home-news-city,.ru-home-news-section,.ru-home-city-section,.section,.ru-utility-band){background-color:var(--ru-page-paper)!important}
html:root.visitor-home :is(body,.inner.content){background-image:none!important}
html:root .ru-service-workspace9 #serviceCards::after{background:var(--ru-page-paper)!important}
html:root #selectedService{font-size:17px!important;line-height:1.65!important;font-weight:700!important;color:#3155ce!important}
/* Explicit saved user choice controls CSS animations and native web animations together. */
html:root.ru-motion-off9 *,html:root.ru-motion-off9 *::before,html:root.ru-motion-off9 *::after{animation-play-state:paused!important;transition:none!important;scroll-behavior:auto!important}
html:root.ru-motion-off9 .ru-hero-mark{--ru-x:0px!important;--ru-y:0px!important}
html:root.ru-motion-off9 .ru-reveal{opacity:1!important;transform:none!important}
html:root.ru-motion-off9 :is(.school-card,.ru-home-service-card,.ru-hpw-card):is(:hover,:focus-visible){transform:none!important;scale:1!important;translate:0 0!important}
@media(max-width:700px){
 html:root .ru-sidebar-nav>:is(.ru-nav-item,.ru-journey-group){height:42px!important;max-height:42px!important}
 html:root .ru-journey-group{position:relative!important}
 html:root .ru-journey-menu{position:absolute!important;top:100%!important;left:0!important;right:0!important;width:100%!important;min-width:0!important}
 html:root .ru-journey-menu a{font-size:11px!important;padding:8px!important}
 html:root.visitor-school-detail .school-admission{grid-template-columns:auto minmax(0,1fr)!important}
 html:root.visitor-school-detail .tabs{overflow-x:auto!important;flex-wrap:nowrap!important;scrollbar-width:none}

 html:root.ru-journey .ru-sidebar{max-height:calc(126px + var(--ru-nav-strip-height,84px))!important}
 html:root.ru-journey .ru-sidebar .ru-sidebar-nav{max-height:var(--ru-nav-strip-height,84px)!important}
 html:root.ru-journey .ru-journey-mast{grid-template-columns:minmax(0,1fr) 30px 54px!important;gap:6px!important;padding-inline:12px!important}
 html:root.ru-journey .ru-journey-mast .ru-sidebar-logo{grid-column:1!important;grid-row:1!important;gap:7px!important;min-width:0!important}
 html:root.ru-journey .ru-journey-mast .ru-sidebar-logo .name{font-size:16px!important}
 html:root.ru-journey .ru-journey-mast .ru-home-mobile-tool-entry{grid-column:2!important;grid-row:1!important;min-height:54px!important;width:30px!important}
 html:root.ru-journey .ru-journey-account{grid-column:3!important;grid-row:1!important;height:60px!important;width:54px!important;min-width:0!important;display:flex;justify-content:center}
 html:root.ru-journey .ru-sidebar .ru-journey-account :is(.ru-account-profile-entry,.ru-nav-item[data-id=account]){width:54px!important;max-width:54px!important;height:60px!important}
 html:root.ru-journey .ru-journey-mast .ru-journey-search{grid-column:1/-1!important;grid-row:2!important}
 .ru-service-workspace9,.ru-service-workspace9.is-selected{height:auto;grid-template-columns:minmax(0,1fr)}
 html:root .ru-service-workspace9 #serviceCards{height:480px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .ru-service-details9{grid-template-rows:auto auto}
 html:root .ru-hpw-results{grid-auto-columns:86%!important}
 .ru-service-details9 .lead-steps{grid-template-columns:1fr!important}
}


/* Each destination reuses the shared sweep control. */


html:root.ru-motion-off9 .ru-nav-bubble-fill{animation:none!important;clip-path:none!important}

html:root.ru-toolbox-refined .pinyin-entry{padding:14px!important}.ru-name-disclaimer12{margin-top:10px;padding-top:8px;border-top:1px solid #d3dcec;line-height:1.7!important}
/* Toolbox form cards reserve an explicit top-right action column. */
html:root.ru-toolbox-refined .overseas-form-row:not(.pinyin-entry) .overseas-download{position:absolute!important;inset:10px 10px auto auto!important;transform:none!important;margin:0!important;display:inline-flex!important;align-items:center;justify-content:center;height:32px!important;min-height:32px!important}
html:root.ru-toolbox-refined .overseas-form-row{padding:14px 106px 14px 14px!important}
html:root #photoDialog #closePhoto{color:#1b2a4a!important;background:#fff!important;font:28px/1 sans-serif!important;-webkit-text-fill-color:currentColor!important}
html:root #photoDialog #closePhoto:is(:hover,:focus-visible){background:#ff8a24!important;color:#1b2a4a!important}

/* Current component rules, consolidated with the existing owner layer. */
html:root .ru-home-service-matrix{position:relative;border-top:0!important;margin-top:32px!important;padding-top:26px!important}html:root .ru-home-service-matrix::before{content:'';position:absolute;top:0;left:50%;width:100vw;height:1px;transform:translateX(-50%);background:#e1e6ef;pointer-events:none}
html:root .news-feature__eyebrow{color:#f28b37!important}
html:root .ru-transcriber-head9{display:grid;grid-template-columns:1fr 1fr;gap:12px}
html:root .ru-transcriber-direction15{display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-height:42px;padding:8px!important;font-size:12px!important}
.ru-transcriber-direction15 svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7}
html:root .ru-transcriber-direction15[aria-pressed=true]{background-size:100% 100%!important;color:#1b2a4a!important;border-color:#ff8a24!important}
html:root .ru-service-details9 .ru-lead-status:empty{display:none!important}
html:root .ru-service-details9 .ru-lead-label.ru-journey-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}
html:root .ru-service-details9 .lead-guide ul{margin:12px 0 20px!important;padding-left:20px!important}
html:root .ru-service-details9 .lead-guide li{margin-bottom:8px!important}
html:root .ru-service-details9 .lead-guide>h3{border-top:1px solid #d4ddef;padding-top:14px;margin:0 0 14px!important;font-size:16px!important}
html:root .ru-service-details9 .lead-steps{gap:16px 22px!important;margin:0 0 18px!important;padding:0!important}
html:root :is(.card-photo-arrow,.place-photo-arrow,.photo-nav,.gallery-arrow,.city-gallery-arrow,.photo-arrow,.gallery-nav):is(:hover,:focus-visible){background-color:#ff8a24!important;color:#1b2a4a!important;border-color:#ff8a24!important}
@media(max-width:700px){html:root .ru-banner-back9{translate:0 3px!important}.ru-service-workspace9.is-selected{min-height:0}.ru-transcriber-head9{gap:8px!important}.ru-transcriber-direction15{flex-wrap:wrap}.ru-service-details9{margin-top:16px}}
}
