.ugb{--n:#20275D;--n2:#2B347A;--g:#FFBF51;--g2:#FFD98A;--bg:#F6F7FC;--line:#E3E6F3;--txt:#1C2140;--mut:#5B6283;
  background:#fff;border:1px solid var(--line);border-top:5px solid var(--g);border-radius:18px;padding:26px;margin:0 0 32px;color:var(--txt);box-shadow:0 10px 30px rgba(32,39,93,.08);font-family:inherit}
.ugb *{box-sizing:border-box}
.ugb-head{text-align:center;margin-bottom:18px}
.ugb-chip{display:inline-block;background:var(--n);color:var(--g);font-weight:800;font-size:12px;letter-spacing:1.4px;text-transform:uppercase;padding:6px 14px;border-radius:999px}
.ugb .ugb-title{font-size:clamp(20px,3vw,28px);color:var(--n);margin:12px 0 6px;line-height:1.25;border:0;background:none;padding:0}
.ugb-sub{margin:0;color:var(--mut);font-size:14px}
.ugb-notice{background:#FFF6E3;border:1px solid var(--g);color:var(--n);border-radius:12px;padding:10px 14px;margin:0 0 16px;font-weight:600;font-size:14px}
.ugb-tabs{display:flex;gap:8px;background:var(--bg);padding:6px;border-radius:14px;margin-bottom:18px;flex-wrap:wrap}
.ugb-tab{flex:1;min-width:120px;border:0;background:transparent;color:var(--n);font-weight:700;font-size:14px;padding:11px 10px;border-radius:10px;cursor:pointer;font-family:inherit}
.ugb-tab.is-on{background:var(--n);color:#fff;box-shadow:0 4px 12px rgba(32,39,93,.25)}
.ugb-tab:focus-visible{outline:3px solid var(--g);outline-offset:2px}
.ugb-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ugb-field label{display:block;font-weight:700;font-size:14px;color:var(--n);margin:0 0 8px}
.ugb-field select{width:100%;padding:11px 12px;border:1.5px solid var(--line);border-radius:10px;font-size:15px;background:#fff;color:var(--txt);margin-bottom:12px;font-family:inherit}
.ugb-field input[type=range]{width:100%;accent-color:var(--n);margin:4px 0 10px}
.ugb-presets{display:flex;flex-wrap:wrap;gap:6px}
.ugb-presets button{border:1.5px solid var(--line);background:#fff;color:var(--n);border-radius:999px;padding:6px 12px;font-size:12.5px;font-weight:600;cursor:pointer;font-family:inherit}
.ugb-presets button:hover{border-color:var(--g);background:#FFF8E8}
.ugb-result{display:flex;gap:20px;align-items:center;background:linear-gradient(135deg,var(--n),var(--n2));color:#fff;border-radius:16px;padding:20px 22px;margin-top:16px}
.ugb-big{min-width:150px;text-align:center}
.ugb-big span{display:block;font-size:34px;font-weight:800;color:var(--g);line-height:1.1}
.ugb-big small{color:#C9CEE6;font-size:12px;text-transform:uppercase;letter-spacing:1px}
.ugb-break{margin:0;padding:0 0 0 18px;font-size:14px;line-height:1.7;color:#E6E9F7}
.ugb-note{font-size:13px;color:var(--mut);margin:12px 0 0}
.ugb-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:6px}
.ugb-card{position:relative;border:1.5px solid var(--line);border-radius:14px;padding:18px 14px 14px;text-align:center;background:#fff}
.ugb-card h3{font-size:16px;color:var(--n);margin:0 0 6px}
.ugb-card p{margin:2px 0;font-size:15px}
.ugb-card strong{font-size:20px;color:var(--n)}
.ugb-card.is-best{border-color:var(--g);background:#FFFBF1;box-shadow:0 6px 18px rgba(255,191,81,.25)}
.ugb-badge{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--g);color:var(--n);font-size:11px;font-weight:800;padding:3px 10px;border-radius:999px;white-space:nowrap}
.ugb-muted{color:var(--mut);font-size:13px!important}
.ugb-route{background:var(--bg);border-radius:14px;padding:18px;margin-top:4px}
.ugb-route h3{margin:0 0 10px;color:var(--n);font-size:18px}
.ugb-route dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ugb-route dl div{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.ugb-route dt{font-size:11.5px;text-transform:uppercase;letter-spacing:.8px;color:var(--mut);font-weight:700}
.ugb-route dd{margin:3px 0 0;font-weight:700;color:var(--n);font-size:14.5px}
@media (max-width:640px){
  .ugb{padding:18px 14px}
  .ugb-grid,.ugb-cards,.ugb-route dl{grid-template-columns:1fr}
  .ugb-result{flex-direction:column;text-align:center}
  .ugb-break{text-align:left}
  .ugb-tab{min-width:0;font-size:13px;padding:10px 6px}
}
/* Hero scene */
.ugb-hero{position:relative;background:linear-gradient(160deg,#2B347A 0%,#20275D 60%,#1A2050 100%);border-radius:14px;overflow:hidden;padding:22px 24px 0;margin:0 0 18px;border-left:5px solid var(--g);border-right:5px solid var(--g)}
.ugb-hero .ugb-head{margin-bottom:0;position:relative;z-index:2}
.ugb-hero .ugb-chip{background:rgba(255,191,81,.15);border:1px solid rgba(255,191,81,.5)}
.ugb .ugb-hero .ugb-title{color:#fff}
.ugb-hero .ugb-sub{color:#C9CEE6}
.ugb-scene{display:block;width:100%;height:auto;margin-top:8px}
.ugb-bus{animation:ugbDrive 13s linear infinite}
.ugb-bob{animation:ugbBob .45s ease-in-out infinite alternate}
.ugb-wheel{transform-box:fill-box;transform-origin:center;animation:ugbSpin .5s linear infinite}
.ugb-road{animation:ugbRoad .9s linear infinite}
.ugb-lamp{filter:drop-shadow(0 0 4px #FFD98A)}
@keyframes ugbDrive{from{transform:translateX(-260px)}to{transform:translateX(1240px)}}
@keyframes ugbBob{from{transform:translateY(0)}to{transform:translateY(-1.5px)}}
@keyframes ugbSpin{to{transform:rotate(360deg)}}
@keyframes ugbRoad{from{transform:translateX(0)}to{transform:translateX(-100px)}}
@media (prefers-reduced-motion:reduce){.ugb-bus{animation:none;transform:translateX(480px)}.ugb-bob,.ugb-wheel,.ugb-road{animation:none}}
@media (max-width:640px){.ugb-hero{padding:18px 14px 0}.ugb-scene{height:120px}}
